久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

Android開發使用PopupMenu創建彈出式菜單完整實例

這篇文章主要介紹了Android開發使用PopupMenu創建彈出式菜單,結合完整實例形式分析了Android基于PopupMenu對象創建的彈出式菜單相關操作技巧與注意事項,需要的朋友可以參考下

本文實例講述了Android開發使用PopupMenu創建彈出式菜單。分享給大家供大家參考,具體如下:

簡介:

PopupMenu 代表彈出式菜單,它會在指定組件上,默認情況下,PopupMenu會顯示該組件,PopupMenu可增加多個菜單項。

實際效果:

具體實現部分:

首先是主活動中的調用:


public class MainActivity extends Activity {
  PopupMenu popupMenu = null ;
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
  }
  public void onPopupButtonClick(View button){
    //創建PopupMenu對象
    popupMenu = new PopupMenu(this, button);
    //將 R.menu.menu_main 菜單資源加載到popup中
    getMenuInflater().inflate(R.menu.menu_main,popupMenu.getMenu());
    //為popupMenu選項添加監聽器
    popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
      @Override
      public boolean onMenuItemClick(MenuItem item) {
        switch (item.getItemId()){
          case R.id.plain_item:
            //隱藏對話框
            popupMenu.dismiss();
            break;
          default:
            Toast.makeText(MainActivity.this,"you clicked->" + item.getTitle(), Toast.LENGTH_SHORT).show();
        }
        return true;
      }
    });
    popupMenu.show();
  }
}

在布局文件中添加點擊事件:


<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  tools:context=".MainActivity">
  <TextView
    android:id="@+id/txt"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:onClick="onPopupButtonClick"
    android:text="click here to text PopupMenu"
    android:textSize="25dp"/>
</android.support.constraint.ConstraintLayout>

菜單的布局文件:

一、在 /res 下建立 /menu文件夾

二、在menu文件夾下建立:menu_main.xml:


<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:title="@string/app_name"
    android:icon="@drawable/seek02">
    <menu>
      <!--定義一組選項菜單-->
      <group android:checkableBehavior="single">
        <!--定義多個菜單項-->
        <item
          android:id="@+id/font_10"
          android:title="font_10"/>
        <item
          android:id="@+id/font_12"
          android:title="font_12"/>
        <item
          android:id="@+id/font_14"
          android:title="font_14"/>
        <item
          android:id="@+id/font_16"
          android:title="font_16"/>
        <item
          android:id="@+id/font_18"
          android:title="font_18"/>
      </group>
    </menu>
  </item>
  <!--定義一個普通菜單項-->
  <item android:id="@+id/plain_item"
    android:title="plain_item"/>
  <item android:title="font_color"
    android:icon="@drawable/seek03">
    <menu>
      <!--定義一個普通選項菜單-->
      <group>
        <!--定義三個菜單項-->
        <item
          android:id="@+id/red_font"
          android:title="red_title"/>
        <item
          android:id="@+id/green_font"
          android:title="red_title"/>
        <item
          android:id="@+id/blue_font"
          android:title="red_title"/>
      </group>
    </menu>
  </item>
</menu>

三、在menu文件夾下建立:context.xml


<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
  <!--定義一組單選菜單項-->
  <group android:checkableBehavior="single">
    <!--定義三個菜單項-->
    <item
      android:id="@+id/red"
      android:title="red_title"
      android:alphabeticShortcut="r"/>
    <item
      android:id="@+id/green"
      android:title="red_title"
      android:alphabeticShortcut="g"/>
    <item
      android:id="@+id/blue"
      android:title="red_title"
      android:alphabeticShortcut="b"/>
  </group>
</menu>

更多關于Android相關內容感興趣的讀者可查看本站專題:《Android布局layout技巧總結》、《Android開發入門與進階教程》、《Android調試技巧與常見問題解決方法匯總》、《Android基本組件用法總結》、《Android視圖View技巧總結》及《Android控件用法總結》

希望本文所述對大家Android程序設計有所幫助。

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

這篇文章主要介紹了Android開發之TabHost選項卡及相關疑難解決方法,結合實例形式較為詳細的分析了Android開發中TabHost選項卡的常見用法以及相關疑難問題解決方法,需要的朋友可以參考下
這篇文章主要介紹了Android TabHost選項卡標簽圖標始終不出現的解決方法,涉及Android界面布局相關屬性與狀態設置操作技巧,需要的朋友可以參考下
這篇文章主要介紹了Android開發之Notification手機狀態欄通知用法,結合實例形式分析了Android Notification手機狀態欄通知的常見函數、功能及使用技巧,需要的朋友可以參考下
這篇文章主要介紹了Android開發實現模仿微信小窗口功能,結合實例形式分析了Android實現微信風格Dialog對話框窗口相關功能與布局操作技巧,需要的朋友可以參考下
這篇文章主要介紹了Android開發之PopupWindow創建彈窗、對話框的方法,結合實例形式詳細分析了Android使用PopupWindow創建對話框相關操作技巧,需要的朋友可以參考下
這篇文章主要介紹了Android開發之DatePickerDialog、TimePickerDialog時間日期對話框用法,結合實例形式分析了Android使用DatePickerDialog、TimePickerDialog顯示日期時間相關操作技巧,需要的朋友可以參考
主站蜘蛛池模板: 精品久久久久久久久亚洲 | 91精品在线播放 | 麻豆av网站 | 日本亚洲一区 | 国产精品一区二区三区在线 | a级免费观看视频 | 丁香综合| 亚洲第一在线 | 精品国产乱码一区二区三区 | 99国产精品久久久 | 欧美综合一区二区三区 | 亚洲va欧美va天堂v国产综合 | 人人人人爽 | 久久精品日产第一区二区三区 | 一级黄色片一级黄色片 | 欧美日韩一区二区三区四区 | tube国产| 国产精品91视频 | 精品伊人久久 | 国产成人午夜电影网 | 久久精品久久久久久 | 天堂一区 | 天天躁日日躁狠狠很躁 | 9久久精品 | 国产三区精品 | 欧美在线一区二区视频 | 午夜精品在线 | 一区二区小视频 | 国产精品中文字幕在线播放 | 五月婷婷色 | 一区二区三区免费 | 九一在线 | 久久精品国产亚洲一区二区 | 日韩中文字幕高清 | 中文无码日韩欧 | 午夜精品久久久久久久星辰影院 | 午夜影院在线观看 | 女人天堂av | 欧美一级做a爰片免费视频 国产美女特级嫩嫩嫩bbb片 | 欧美日韩高清一区二区三区 | 久久久91精品国产一区二区三区 |