我使用ActionBarSherlok和DrawerLayout,一切正常,但在Android 2.3 ActionBar抽屉图标中不显示。 Insted它显示后退图标。在Android 4中显示抽屉图标。
如何将Android 2中的图标更改为Android 4中的抽屉图标?
我使用下一个代码来初始化抽屉:
drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START);
drawerToggle = new ActionBarDrawerToggle(this, drawer,
R.drawable.ic_drawer, R.string.main_01, R.string.main_02) {
public void onDrawerClosed(View view) {
getSupportActionBar().setTitle(title);
invalidateOptionsMenu();
}
public void onDrawerOpened(View drawerView) {
getSupportActionBar().setTitle(drawerTitle);
invalidateOptionsMenu();
}
};
drawer.setDrawerListener(drawerToggle);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
答案 0 :(得分:1)
“up”可供性指标由主题的homeAsUpIndicator
属性中指定的drawable提供。要使用您自己的自定义版本覆盖它,它将是这样的:
<style name="Theme.MyFancyTheme" parent="android:Theme.Holo">
<item name="android:homeAsUpIndicator">@drawable/my_fancy_up_indicator</item>
</style>
如果您在申请时支持pre-3.0
,请务必将此版本的自定义主题放在values-v11
或类似内容中。
答案 1 :(得分:0)
ActionBarDrawerToggle
用于本机API Level 11操作栏,可能用于AppCompat操作栏(不确定该操作栏)。
对于ActionBarSherlock,请使用Sherlock-aware drawer implementation,或按照this issue和this issue中的说明实施解决方法。