我正在創建一個應用程序,我正在從Windows Phone 8移植到android。我的Android開發知識是有限的。使用導航抽屜的Android片段狀態
我正在使用導航抽屜。 我已經做了一些實現,我面臨的問題/問題是在它們之間切換時恢復視圖狀態。
我正在使用arcgis android sdk。 視圖1:從互聯網獲取的列表視圖中的地理空間數據。 視圖2:顯示你的位置和地點的地圖視圖中的1個 視圖3選擇(抽頭):一個設置視圖以增大或減小的半徑來從視圖中提取項目1.
當視圖之間切換我想意見保持其狀態(恢復狀態)。
這種情況下的最佳做法是什麼?現在我正在使用片段。 問題是切換片段時onSaveInstanceState沒有被調用。
這是我的代碼轉換的片段,它是不是在所有:)
private void selectItem(int position) {
// Create a new fragment and specify the planet to show based on position
Fragment f;
FragmentTransaction ft = fragManager.beginTransaction();
switch(position) {
case 0:
if((f = fragManager.findFragmentByTag("home")) == null) {
f = Fragment.instantiate(this, HomeFragment.class.getName());
f.setRetainInstance(true);
ft.add(R.id.content_frame, f, "home");
} else {
ft.attach(f);
}
break;
case 1:
if((f = fragManager.findFragmentByTag("map")) == null) {
f = Fragment.instantiate(this, MapFragment.class.getName());
f.setRetainInstance(true);
ft.add(R.id.content_frame, f, "map");
} else {
ft.attach(f);
}
break;
case 2:
if((f = fragManager.findFragmentByTag("settings")) == null) {
f = Fragment.instantiate(this, SettingsFragment.class.getName());
f.setRetainInstance(true);
ft.add(R.id.content_frame, f, "settings");
} else {
ft.attach(f);
}
break;
}
ft.commit();
// Highlight the selected item, update the title, and close the drawer
mDrawerList.setItemChecked(position, true);
setTitle(tabs[position]);
mDrawerLayout.closeDrawer(mDrawerList);
}
你想把你的碎片放入後臺嗎? – Kishan