我有一个带有自定义布局视图和样式的自定义Android操作栏。我需要为导航抽屉显示“Home As Up”按钮。问题是按钮没有以我的自定义布局样式显示。我需要Android默认主页作为向上图标,以便我可以有一个默认的导航抽屉图标。 (具有导航抽屉打开和关闭动画的图标)。
现在我尝试了
getActionBar().setDisplayHomeUpAsEnabled(true);
getActionBar().setHomeButtonEnabled(true)
但是主页按钮没有显示出来。任何人都可以告诉我如何在自定义操作栏上实现默认主页按钮吗?
答案 0 :(得分:7)
对我来说,这可以显示向上导航。我还在弄清楚如何实际实现向上导航。
getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM | ActionBar.DISPLAY_SHOW_HOME | ActionBar.DISPLAY_HOME_AS_UP);
看起来你可以使用便利功能来处理这样的事情:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
Intent intent;
intent = NavUtils.getParentActivityIntent(this);
NavUtils.navigateUpTo(this, intent);
return true;
}
return super.onOptionsItemSelected(item);
}
要处理自定义部分中的按钮,您可以在布局中添加onClick并实现指定的功能。
答案 1 :(得分:0)
旧问题,但这是我在我身上使用的......
...
getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM | ActionBar.DISPLAY_SHOW_HOME | ActionBar.DISPLAY_HOME_AS_UP);
getActionBar().setDisplayHomeAsUpEnabled(true);
...
然后在AndroidManifest.xml中:
<activity
...
android:parentActivityName="com.example.app.MainActivity"
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.app.MainActivity">
</meta-data>
</activity>
如果使用ActionBarSherlock或AppCompat,元数据值适用于Android 4.0及以下版本,但对于4.1及更高版本,只需将android:parentActivityName添加到清单中的活动声明。
这使我可以使用向上导航(显示按钮并实际向上导航),同时我有自定义操作栏布局。
希望将来可以帮助您或其他人。