我正在尝试在列表导航模式下实现 Android Action Bar,当从列表中选择一个项目时它成功地更改了 fragment ,但是 fragment 重叠并且我可以在屏幕上看到前一个的内容第二个被选中。这是我的 Activity 的 OnCreate 和 OnNavigationItemSelected 代码:
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
mFirstFragment = new FirstFragment();
mSecondFragment = new SecondFragment();
SpinnerAdapter mSpinnerAdapter = ArrayAdapter.createFromResource(
this,
R.array.action_list,
android.R.layout.simple_spinner_dropdown_item);
mActionBar = getActionBar();
mActionBar.setDisplayShowTitleEnabled(false);
mActionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
mActionBar.setListNavigationCallbacks(mSpinnerAdapter, this);
if(savedInstanceState != null) {
mActionBar.setSelectedNavigationItem(
savedInstanceState.getInt("currFragment"));
}
}
public boolean onNavigationItemSelected(int position, long itemId) {
FragmentTransaction mFragmentTransaction =
getFragmentManager().beginTransaction();
switch(position) {
case FIRST_FRAGMENT:
mFragmentTransaction.replace(
android.R.id.content,
mFirstFragment);
break;
case SECOND_FRAGMENT:
mFragmentTransaction.replace(
android.R.id.content,
mSecondFragment);
break;
}
mFragmentTransaction.commit();
return true;
}
提前致谢!
最佳答案
我遇到了同样的问题。 FragmentTransaction .attach and .detach for Actionbar tabs 中接受的答案为我工作。您也可以从 Android Action Bar Tab with scrollview made duplicate view after orientation change 获得很好的指导。 (尽管对我有用的关键见解来 self 链接到的第一个问题)。
关于android - ActionBar 列表导航重叠 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10541034/