1. 程式人生 > 程式設計 >Android實現微信加號選單模式

Android實現微信加號選單模式

本文例項為大家分享了Android實現微信加號選單模式的具體程式碼,供大家參考,具體內容如下

在模仿微信過程中有一個加號選單啟動著實讓我有點費心,因為我去掉了自帶的標題欄,想通過OnCreateOptionMenu這段程式碼來實現傳統的Menu顯示顯然是不可能了。所以在自定義建立的狀態列裡添加了一個加號的ImageView,想通過監聽ImageView的Onclick來觸發Popumenu的建立。基本效果與微信相似,細節方面還需多多考究。

Android實現微信加號選單模式

Android實現微信加號選單模式

看具體程式碼如下:

1、監聽之後建立Popumenu的java程式碼:

menuView.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View v) {
        PopupMenu popupMenu=new PopupMenu(MainActivity.this,v);
        popupMenu.getMenuInflater().inflate(R.menu.menu,popupMenu.getMenu());
        /*暴力破解為menu新增icon問題。失敗了。*/
        /*if (popupMenu!=null){
          try {
            Method method=popupMenu.getClass().getDeclaredMethod("setOptionalIconsVisible",Boolean.TYPE);
            method.setAccessible(true);
            method.invoke(popupMenu,true);
          }catch (Exception e){
            e.printStackTrace();
          }
        }*/
        popupMenu.show();
      }
});

2、Popumenu的xml程式碼:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:id="@+id/group"
    android:icon="@drawable/icon_menu_group"
    android:title="發起群聊">
  </item>
  <item android:id="@+id/addfriend"
    android:icon="@drawable/icon_menu_addfriend"
    android:title="新增朋友">
  </item>
  <item android:id="@+id/sao"
    android:icon="@drawable/icon_menu_sao"
    android:title="掃一掃">
 
  </item>
  <item android:id="@+id/manney"
    android:icon="@drawable/icon_menu_maney"
    android:title="收付款">
 
  </item>
  <item android:id="@+id/help"
    android:icon="@drawable/icon_menu_help"
    android:title="幫助與反饋">
 
  </item>
</menu>

但是這並沒有完全解決我的問題,在menu中新增icon圖片資源卻無法實現。網上有相關程式碼和資料,說是Android將新增圖片資源的變數設為private型別,並且沒有給開發者提供外部介面訪問。我也做了相應試驗,但不盡如意。還望高人成功之後能指點一二。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。