我一直在尋找一種方法來以編程方式更改android中溢出菜單圖標(biāo)的顏色。我發(fā)現(xiàn)的唯一選擇是通過添加自定義樣式來永久更改圖標(biāo)。問題在于,在不久的將來,我們將需要在使用應(yīng)用程序時(shí)更改此設(shè)置。我們的應(yīng)用是一系列在線平臺的擴(kuò)展,因此用戶可以輸入其平臺的網(wǎng)絡(luò)網(wǎng)址。這些都有自己的樣式,將通過對應(yīng)用程序的API調(diào)用獲取。這些可能會(huì)使我改變圖標(biāo)的顏色...目前,我在操作欄中更改了其他圖標(biāo),如下所示:if (ib != null){ Drawable resIcon = getResources().getDrawable(R.drawable.navigation_refresh); resIcon.mutate().setColorFilter(StyleClass.getColor("color_navigation_icon_overlay"), PorterDuff.Mode.SRC_ATOP); ib.setIcon(resIcon);}現(xiàn)在,我將不得不使用樣式。
3 回答

DIEA
TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超2個(gè)贊
有一種用于更改溢出圖標(biāo)的簡單易用的解決方案。有一個(gè)示例如何更改溢出圖標(biāo)的顏色,但是您可以對其進(jìn)行調(diào)整以更改圖像:
private void setOverflowIconColor(int color) {
Drawable overflowIcon = toolbar.getOverflowIcon();
if (overflowIcon != null) {
Drawable newIcon = overflowIcon.mutate();
newIcon.setColorFilter(color, PorterDuff.Mode.MULTIPLY);
toolbar.setOverflowIcon(newIcon);
}
}
- 3 回答
- 0 關(guān)注
- 532 瀏覽
添加回答
舉報(bào)
0/150
提交
取消