Android ActionBar自定义视图和NavigationDrawer

时间:2015-07-23 17:59:14

标签: java android navigation-drawer searchview

我刚遇到项目主要活动的一些问题。 我在ActionBar上有一个带有自定义视图的NavigationDrawer和SearchView的 SherlockFragmentActivity 。 问题是当我在我的SearchView上键入查询时,我可以进行搜索并且一切正常,但是当我关闭SearchView时,我的ActionBar自定义视图和NavigationDrawer切换从ActionBar中消失。

这是图形问题 enter image description here

这是我的NavigationDrawer

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();
}

这就是我设置ActionBar的方式

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);
}

在SearchView被取消后,我该怎么做才能展示我的自定义View和DrawerToggle?

1 个答案:

答案 0 :(得分:0)

好吧,我在这里找到了自己的答案,我正在使用SherlockActionBar和支持库4.0,我刚刚删除了sherlock库并将我的支持库升级到v7.21.03,实现了Toolbar并且每个问题都出来了,希望它能帮到某些人除了我