将抽屉图标更改为后退箭头
我正在使用新的DrawerLayout
进行侧面导航。 我正在使用这样的抽屉图标(“汉堡包”):
@Override protected void onStart() { super.onStart(); mDrawerLayout = (DrawerLayout) findViewById(R.id.activity_main_drawerlayout); mDrawerToggle = new ActionBarDrawerToggle( this, mDrawerLayout, R.drawable.ic_navigation_drawer, R.string.app_name, R.string.app_name); mDrawerLayout.setDrawerListener(mDrawerToggle); getActionBar().setDisplayHomeAsUpEnabled(true); getActionBar().setHomeButtonEnabled(true); }
但是,当我向后台添加Fragment
,我想再次显示后退箭头,以便用户可以导航回“家”,然后才能打开应用程序抽屉。
如何将抽屉图标重置为后面的图标?
我想要的箭头:
要禁用和隐藏DrawerToggle“汉堡”,只需调用
mDrawerToggle.setDrawerIndicatorEnabled(false);
我为托pipe活动创build了一个界面来更新汉堡包菜单的视图状态。 对于最高级别的片段,我将切换设置为true
,对于我要显示的片段<箭头,我将切换设置为false
。
public class SomeFragment extends Fragment { public interface OnFragmentInteractionListener { public void showDrawerToggle(boolean showDrawerToggle); } private OnFragmentInteractionListener mListener; @Override public void onAttach(Activity activity) { super.onAttach(activity); try { this.mListener = (OnFragmentInteractionListener) activity; } catch (ClassCastException e) { throw new ClassCastException(activity.toString() + " must implement OnFragmentInteractionListener"); } } @Override public void onResume() { super.onResume(); mListener.showDrawerToggle(false); } }
然后在我的活动…
public class MainActivity extends Activity implements SomeFragment.OnFragmentInteractionListener { private ActionBarDrawerToggle mDrawerToggle; public void showDrawerToggle(boolean showDrawerIndicator) { mDrawerToggle.setDrawerIndicatorEnabled(showDrawerIndicator); } }