我有一个活动A,一个ListFragment L和两个片段F1和F2。
当应用程序启动时,会创建一个A,它会加载L.根据用户点击的内容,它会替换为F1或F2
我已经实现了一个向用户显示某些项目的导航抽屉。但是,由于我在Activity中实现了导航抽屉,因此它显示了所有碎片。但我希望节目A是可见的
(非常类似于Googles Gmail应用。当用户在主屏幕上时 - 抽屉就在场。当用户点击打开电子邮件时,抽屉会更改为后退按钮)
我不知道如何翻译上面的代码。提前谢谢
答案 0 :(得分:0)
在你的内部片段(如查看邮件)
@Override
public void onPause()
{
super.onPause();
((MyActivity) getActivity()).enableToggle();
}
@Override
public void onResume()
{
super.onResume();
((MyActivity) getActivity()).disableToggle();
}
我希望你的活动中会有'NavigationDrawerFragment',添加这个方法:
public void disableToggle()
{
if (mNavigationDrawerFragment != null)
mNavigationDrawerFragment.disableToggle();
}
public void enableToggle()
{
if (mNavigationDrawerFragment != null)
mNavigationDrawerFragment.enableToggle();
}
在NavigationDrawerFragment中添加以下方法: 还要检查您是否正在使用 android.support.v7.app.ActionBarDrawerToggle;
public void disableToggle()
{
if (mDrawerToggle != null)
mDrawerToggle.setDrawerIndicatorEnabled(false);
}
public void enableToggle()
{
if (mDrawerToggle != null)
mDrawerToggle.setDrawerIndicatorEnabled(true);
}
编辑:查看上述代码的快照
MainFragment
DetailFragment