中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么解決Android Studio運行后無法顯示小圖標

發布時間:2021-03-11 16:58:35 來源:億速云 閱讀:723 作者:TREX 欄目:移動開發

這篇文章主要介紹“怎么解決Android Studio運行后無法顯示小圖標”,在日常操作中,相信很多人在怎么解決Android Studio運行后無法顯示小圖標問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么解決Android Studio運行后無法顯示小圖標”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

提出問題

我做的是一個通訊錄,用到了選項菜單,每一個菜單項左邊我都添加了一個小圖標,運行后發現沒有顯示出來。

怎么解決Android Studio運行后無法顯示小圖標

解決方案

利用反射機制,根據對象來尋找類,再根據類來找方法,在顯示菜單選項的Activity中復寫onMenuOpened方法:

@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 (NoSuchMethodException e) {
          e.printStackTrace();
        } catch (IllegalAccessException e) {
          e.printStackTrace();
        } catch (InvocationTargetException e) {
          e.printStackTrace();
        }
      }
    }
    return super.onMenuOpened(featureId, menu);
  }

我解釋一下,因為設置圖標顯示這個方法是不可訪問的(private),所以我們才會這么麻煩要用到反射機制來顯現圖標。

代碼我也解釋一下,我們用menu對象來反射MenuBuilder這個類,看這個類有沒有。得到這個類以后,再通過這個類得到它的方法,這個方法叫setOptionalIconsVisible,這個是要自己打出來的,這個方法它是Boolean類型的。因為這個方法是私有的,所以我們要把不可訪問設置為可訪問的。最后我們調用method.invoke設置true后將圖標變為可見的。

修改之后

怎么解決Android Studio運行后無法顯示小圖標

好了,到這里我們的圖標就顯示成功啦!

總結

到此,關于“怎么解決Android Studio運行后無法顯示小圖標”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

任丘市| 梧州市| 巴林左旗| 黄浦区| 阳朔县| 陵川县| 北京市| 鄂温| 鱼台县| 聂拉木县| 玉林市| 岐山县| 二连浩特市| 商水县| 渭源县| 库伦旗| 安达市| 浦东新区| 沭阳县| 徐闻县| 邹平县| 周口市| 濉溪县| 全州县| 米泉市| 黄石市| 勐海县| 乌拉特中旗| 滕州市| 普兰店市| 黑河市| 西城区| 宁德市| 怀集县| 太仆寺旗| 马关县| 扎囊县| 潞西市| 手游| 黄浦区| 汽车|