首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在特定片段中更改NavDrawer图标

问如何在特定片段中更改NavDrawer图标
EN

Stack Overflow用户
提问于 2017-10-12 21:52:28
回答 1查看 35关注 0票数 0

在我的应用程序中,我有一个片段负责显示新闻调用,该片段也是导航抽屉中的一个项目。

用户可以单击新闻调用,然后输入一个新片段。

我想要的是,当用户输入这个新的片段,其中有新闻,在NavDrawer之前的图标,转一个返回箭头。

--这是保存对新闻调用的片段

​

这是新闻片段,它应该有返回箭头

​

EN

回答 1

Stack Overflow用户

发布于 2017-10-13 06:19:01

你可以这样做

在片段中重写如下的onCreate方法

代码语言:javascript
复制
 @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setHasOptionsMenu(true); // note this line
    }

然后重写如下的onActivityCreated方法

代码语言:javascript
复制
  @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        ((MainActivity)getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true); // this is your back arrow

    }

最后,单击反箭头覆盖onOptionsItemSelected方法

代码语言:javascript
复制
 @Override
    public boolean onOptionsItemSelected(MenuItem item) {

        int id = item.getItemId();

        switch (id) {
            case android.R.id.home:

                if (getActivity() != null)
                    getActivity().onBackPressed();

                break;
        }
        return super.onOptionsItemSelected(item);

    }

完成了!希望这是你想要的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46719434

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档