ToolBar中menu無(wú)法同時(shí)顯示圖標(biāo)和文字問(wèn)題的解決方法
在使用ToolBar時(shí),雖然在menu.xml文件的 item中 設(shè)置了 icon 屬性,但是當(dāng)設(shè)置 showAsAction=“never”時(shí),默認(rèn)只顯示文字的 title,而不會(huì)顯示圖標(biāo) icon??梢栽?Activity 中重寫onMenuOpened()方法,通過(guò)反射使 icon 和 title 同時(shí)可見。
將如下代碼復(fù)制到Activity 中即可:
@Override
public boolean onMenuOpened(int featureId, Menu menu) {
if (menu != null) {
if (menu.getClass().getSimpleName().equalsIgnoreCase("MenuBuilder")) {
try {
Method method = menu.getClass().getDeclaredMethod("setOptionalIconsVisible", Boolean.TYPE);
method.setAccessible(true);
method.invoke(menu, true);
} catch (Exception e) {
e.printStackTrace();
}
}
}
return super.onMenuOpened(featureId, menu);
}
處理之前的效果如下:
重寫onMenuOpened(),處理之后的效果如下:
可以看到,圖標(biāo)和文字都同時(shí)顯示出來(lái)了。
我的menu.xml文件如下:
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" tools:context=".activity.xunta.DetailsActivity" > <item android:id="@+id/item_share" android:icon="@mipmap/ic_launcher" android:orderInCategory="100" android:title="分享"/> <item android:id="@+id/item_blacklist" android:icon="@mipmap/ic_launcher" android:orderInCategory="100" android:title="拉黑"/> <item android:id="@+id/item_report" android:icon="@mipmap/ic_launcher" android:orderInCategory="100" android:title="舉報(bào)"/> </menu>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android動(dòng)態(tài)修改ToolBar的Menu菜單示例
- Android中Toolbar隨著ScrollView滑動(dòng)透明度漸變效果實(shí)現(xiàn)
- Android折疊式Toolbar使用完全解析(CollapsingToolbarLayout)
- Android自定義Toolbar使用方法詳解
- Android ToolBar控件詳解及實(shí)例
- Android自定義ActionProvider ToolBar實(shí)現(xiàn)Menu小紅點(diǎn)
- Android5.0+ CollapsingToolbarLayout使用詳解
- Android ToolBar整合實(shí)例使用方法詳解
- 解決Android V7后自定義Toolbar、ActionBar左側(cè)有空白問(wèn)題
- Android Support Library 標(biāo)題欄(Toolbar)滾動(dòng)效果實(shí)現(xiàn)方法
相關(guān)文章
Android開發(fā)基礎(chǔ)實(shí)現(xiàn)最簡(jiǎn)單的視頻播放示例
這篇文章主要為大家介紹了Android開發(fā)基礎(chǔ)實(shí)現(xiàn)最簡(jiǎn)單的視頻播放示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
Android SharedPreferences實(shí)現(xiàn)記住密碼和自動(dòng)登錄
這篇文章主要為大家詳細(xì)介紹了Android SharedPreferences實(shí)現(xiàn)記住密碼和自動(dòng)登錄,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-05-05
Android開發(fā)之無(wú)痕過(guò)渡下拉刷新控件的實(shí)現(xiàn)思路詳解
下拉刷新效果功能在程序開發(fā)中經(jīng)常會(huì)見到,今天小編抽時(shí)間給大家分享Android開發(fā)之無(wú)痕過(guò)渡下拉刷新控件的實(shí)現(xiàn)思路詳解,需要的朋友參考下吧2016-11-11
Android小程序?qū)崿F(xiàn)訪問(wèn)聯(lián)系人
這篇文章主要為大家詳細(xì)介紹了Android小程序?qū)崿F(xiàn)訪問(wèn)聯(lián)系人,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一2020-05-05
Android采用雙緩沖技術(shù)實(shí)現(xiàn)畫板
這篇文章主要為大家詳細(xì)介紹了Android采用雙緩沖技術(shù)實(shí)現(xiàn)畫板的相關(guān)資料,思路清晰,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05
Handler實(shí)現(xiàn)線程之間的通信下載文件動(dòng)態(tài)更新進(jìn)度條
每一個(gè)線程對(duì)應(yīng)一個(gè)消息隊(duì)列MessageQueue,實(shí)現(xiàn)線程之間的通信,可通過(guò)Handler對(duì)象將數(shù)據(jù)裝進(jìn)Message中,再將消息加入消息隊(duì)列,而后線程會(huì)依次處理消息隊(duì)列中的消息。這篇文章主要介紹了Handler實(shí)現(xiàn)線程之間的通信下載文件動(dòng)態(tài)更新進(jìn)度條,需要的朋友可以參考下2017-08-08
關(guān)于Android Fragment對(duì)回退棧的詳細(xì)理解
這篇文章主要介紹了Android Fragment的回退棧示例詳細(xì)介紹的相關(guān)資料,在Android中Fragment回退棧是由Activity管理的,每個(gè)Activity都有自己的回退棧,其中保存了已經(jīng)停止(處于后臺(tái))的Fragment實(shí)例,需要的朋友可以參考下2016-12-12

