在应用内导航有几种方式,其中有临时性导航,层级式导航等等,在此,我阐述一下层级式导航的工作原理以及实现
层级导航(hierarchical navigation)可在应用内逐级向上导航。
首先我们需要启用应用图标向上导航按钮的功能,并在Fragment视图上显示向左的图标,
那么需要调用Fragment的DisplayHomeAsUpEnabled属性 setDisplayHomeAsUpEnabled(boolean showUp)。
而为了响应向上按钮,可用过覆盖onOptionsItemSelected(MenuItem)方法:
首先在onCreate() 中开启setHasOptionsMenu(true);
public boolean onPotionsItemSelected(MenuItem item){ switch(item.getItemId()){ case android.R.id.home: return true; default: return super.onPotionsItemSelected(item); } }
然后再配合使用NavUtils便利类与manifest配置文件中的元数据来更好的实现层级式导航:
<activity android:name="com.heqing.fragementlab.MainActivity" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value=".MyListActivity" /> </activity>
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { if (NavUtils.getParentActivityName(getActivity()) != null) { getActivity().getActionBar().setDisplayHomeAsUpEnabled(true); } }转载出处: https://blog.csdn.net/hqocshheqing/article/details/46290743