片段内的工具栏

时间:2016-10-27 19:03:01

标签: android android-fragments android-actionbar navigation-drawer toolbar

在我的项目中,我有一个活动和不同的片段,对于一些raisons,我使用片段内的工具栏。

我还有一个抽屉菜单,这就是我在主要活动中添加的内容

mDrawerToggle = new ActionBarDrawerToggle(this, this.mDrawerLayout, 0, 0)
    {

        public void onDrawerClosed(View drawer) {
            super.onDrawerClosed(drawer);
            invalidateOptionsMenu();
        }

        public void onDrawerOpened(View drawer) {
            super.onDrawerOpened(drawer);
            invalidateOptionsMenu();
        }
    };
    mDrawerLayout.addDrawerListener(mDrawerToggle);
.
.
.
public void setDrawerState(boolean isEnabled) {
    if (isEnabled) {
        mDrawerToggle.setDrawerIndicatorEnabled(true);
        mDrawerToggle.syncState();

    } else {
        mDrawerToggle.setDrawerIndicatorEnabled(false);
        mDrawerToggle.syncState();
    }
}

我有两个片段:家庭和细节片段 在我的homeFragment中,我希望看到汉堡包图标,当我点击它时抽屉菜单开始(这是我第一次点击时发生的事情)。

HomeFragment中的

代码:

((AppCompatActivity) getActivity()).setSupportActionBar(mToolbar);
    ((AppCompatActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    ((AppCompatActivity) getActivity()).getSupportActionBar().setHomeButtonEnabled(true);
    ((AppCompatActivity) getActivity()).getSupportActionBar().setDisplayShowTitleEnabled(false);
    ((MainActivity) mContext).setDrawerState(true);

接下来当我从主片段开始细节片段时,我必须看到向上的插入符号图标,当我点击它时,我会回到主片段。

在DetailFragment中的

代码:

((AppCompatActivity) getActivity()).setSupportActionBar(mToolbar);
    ((AppCompatActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    ((AppCompatActivity) getActivity()).getSupportActionBar().setHomeButtonEnabled(true);
    ((MainActivity) mContext).setDrawerState(false);

当我回去时,汉堡包图标不再起作用,有时后面的图标也不能用于其他低级别的碎片。

是我做的正确或有另一种更好的方法来做到这一点

请帮助。

0 个答案:

没有答案