Java Android ActionBar自定义视图和导航抽屉
我的项目主要活动遇到了一些问题。 我有一个SherlockFragmentActivity,它有一个NavigationDrawer,在ActionBar上有一个带有自定义视图的SearchView。 问题是,当我在SearchView上键入查询时,我可以进行搜索,一切正常,但当我关闭SearchView时,ActionBar自定义视图和NavigationDrawer切换从ActionBar中消失 这里是图形问题 这是我的抽屉Java Android ActionBar自定义视图和导航抽屉,java,android,navigation-drawer,searchview,Java,Android,Navigation Drawer,Searchview,我的项目主要活动遇到了一些问题。 我有一个SherlockFragmentActivity,它有一个NavigationDrawer,在ActionBar上有一个带有自定义视图的SearchView。 问题是,当我在SearchView上键入查询时,我可以进行搜索,一切正常,但当我关闭SearchView时,ActionBar自定义视图和NavigationDrawer切换从ActionBar中消失 这里是图形问题 这是我的抽屉 private void initialiseDrawer(){
private void initialiseDrawer(){
this.drawerLayout = (DrawerLayout)findViewById(R.id.drawer_layout);
this.drawerList = (ListView)findViewById(R.id.navigation_drawer);
this.drawerAdapter = new NavigationDrawerAdapter(MainActivity.this);
this.drawerList.setAdapter(drawerAdapter);
this.drawerList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
handleDrawerSelectedPosition(position);
}
});
//getSupportActionBar().setHomeButtonEnabled(true);
this.drawerToggle = new ActionBarDrawerToggle(this, this.drawerLayout, R.drawable.drawer,
R.string.navigation_drawer_open, R.string.navigation_drawer_close){
public void onDrawerOpened(View view){
super.onDrawerOpened(view);
hideMenu();
}
public void onDrawerClosed(View view){
super.onDrawerClosed(view);
showMenu();
}
};
this.drawerLayout.setDrawerListener(drawerToggle);
this.drawerToggle.syncState();
}
删除SearchView后,如何显示自定义视图和抽屉切换 嗯,我在这里找到了自己的答案,我使用的是SherlockActionBar和支持库4.0,我刚刚删除了sherlock库,并将我的支持库升级到v7.21.03,实现了工具栏,所有问题都解决了,希望它能帮助其他人而不是我
private void showCustomActionBarView(){
getSupportActionBar().setDisplayShowHomeEnabled(false);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowCustomEnabled(true);
getSupportActionBar().setDisplayUseLogoEnabled(false);
getSupportActionBar().setDisplayShowTitleEnabled(false);
getSupportActionBar().setCustomView(R.layout.action_bar_layout);
}