gpt4 book ai didi

android - 以编程方式更改 ActionBar 图标

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:50:21 25 4
gpt4 key购买 nike

我要从一个 fragment 回到我的主要 Activity ,为了某些逻辑,我必须更改操作栏菜单上图标的外观。

这是操作栏上的菜单:

<?xml version="1.0" encoding="utf-8"?>

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context="it.gn.sfa.Main">


<item
android:id="@+id/action_search"
android:actionViewClass="android.widget.SearchView"
android:icon="@drawable/ic_action_search"
android:showAsAction="collapseActionView|ifRoom"
android:title="Search" />
<item
android:id="@+id/action_filter"
android:icon="@drawable/ic_action_filter_empty"
android:showAsAction="ifRoom"
android:title="Filter" />
<item
android:id="@+id/action_new"
android:icon="@drawable/ic_action_new"
android:showAsAction="ifRoom"
android:title="New" />

</menu>

我必须更改第二个项目(id = action_filter 的那个)。我尝试了不同的解决方案,在不同的帖子中找到。评分最高的是

mOptionsMenu.getItem(0).setIcon(getResources().getDrawable(R.drawable.ic_action_filter));

但似乎不起作用。

另一方面 getActionBar().setIcon(getResources().getDrawable(R.drawable.ic_action_filter)); 改变了标志,我不想这样。

如何只更改菜单上的第二项?

最佳答案

试试这个

mOptionsMenu.findItem(R.id.action_filter).setIcon(R.drawable.ic_action_filter);

假设您已经为 mOptionsMenu 中的所有设置

private Menu mOptionsMenu;
...
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
// inflating your menu here
mOptionsMenu = menu;
return super.onCreateOptionsMenu(menu);
}

希望对您有所帮助:)

关于android - 以编程方式更改 ActionBar 图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25627071/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com