当前位置: 首页 > 知识库问答 >
问题:

将图标更改为工具栏Android

公孙琛
2023-03-14

如何从工具栏中获取图标以更改为使用bbdd中看到的方法获得的新图标。问题是我无法访问更新活动的事件以更改图标。我尝试使用onPreareOptionsMenu方法,但无法使其工作。我无法通过将代码放入onStart来做到这一点,因为它告诉我菜单对象为空或无效。

public boolean onPrepareOptionsMenu(Menu menu) {
    menu.clear();
    Drawable iconoMenu = obtenerIconoMenuCarro();
    getMenuInflater().inflate(R.menu.menu_categorias, menu);
    menu.getItem(0).setIcon(iconoMenu);
    return super.onPrepareOptionsMenu(menu);

}

    @Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_categorias, menu);
    Drawable iconoMenu = obtenerIconoMenuCarro();
    menu.getItem(0).setIcon(iconoMenu);
    return true;
}

我的活动由AppCompactActive扩展并通过AdapterView加载。当我返回片段对话框或从下一个活动开始时,我遇到了问题。

谢谢。

共有1个答案

彭弘伟
2023-03-14

对我来说,最简单的方法是保留对MenuItem的引用,以供以后使用。

当菜单项膨胀时获取。

    MenuItem menuItem; 

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main_menu, menu);

        //find the menu item from the id
        menuItem = menu.findItem(R.id.myMenuItem);
        return true;
    }

然后使用mipmap资源或@draable更改您需要的图像。

    menuItem.setIcon(R.mipmap.ic_other_icon);
 类似资料:
  • 我有一个工具栏。这张照片的背景颜色是明亮的橙色,最好看的颜色是白色而不是黑色。 我的默认颜色是黑色而不是白色。因为它会与其他东西冲突,所以几乎不可能被覆盖。我无法将主文本颜色更改为白色! 我设法改变了标题的颜色。我现在正在寻找的是如何将操作按钮的颜色也更改为白色。 我的代码: 主要活动: 菜单栏: 风格:

  • 我用的是Android系统。支持v7。小装置。从这篇文章中学习了如何将汉堡包图标的颜色更改为白色,但当我调用时,向上/向后箭头仍然是黑色 我怎样才能使箭头也变成白色? 下面是我的工具栏看起来像当我调用setDisplayHomeAsUpEn的(): ...这是我风格的相关部分。xml文件:

  • 问题内容: 我目前正在为我的应用程序实现主题支持,其中一部分是更改操作栏应用程序图标。选择“ Holo Light”时,我想使用深色图标。除了设置动作栏应用程序图标的部分以外,其他所有操作均通过该方法完成。我要使用的代码是: 我得到的错误是“这里没有这样的参考”。应该如何正确完成? 顺便说一句,我是那么没有动作吧Sherlock的东西。 问题答案: 您将操作栏扔在那里。返回的实例,然后您需要调用该

  • 问题内容: 我正在使用适用于Android的Google Maps API。当我单击标记时,以下代码将启用右下角的地图工具栏 但是,我希望此地图工具栏出现在地图的右上角,而不是默认的右下角位置。 我该怎么做? 问题答案: 发表评论的想法,但是声誉低下。所以: 据我所知,目前尚无法定位。它只会出现在其默认位置。 正如Nathan所说,如果可能,我应该添加一些替代方案。因此,有一个解决方法:您可以禁用

  • 我在活动中有以下代码: 我正在从中的不同片段更新ActionBar标题,如下所示:

  • 我在活动文件中有一个膨胀的视图,布局文件碰巧有一个工具栏小部件,我希望用图标填充。我尝试使用code但是没有显示出来,工具栏文本也没有显示出来。布局的代码是这样的... 如何成功地使此工具栏在一个膨胀的视图中显示图标和文本?