您現在的位置是:電腦技術吧?>? 故障問題 ??>??android添加菜單,菜單選擇切換android??>??正文詳情

android添加菜單,菜單選擇切換android

弘晶瀅2019-12-19 13:23:02 人圍觀
簡介androidmenu菜單樣式本文介紹了Android的三個菜單。與您分享以供參考。具體分析如下:Android的菜單分為三種類型:選項菜單、上下文菜單和子菜單。一。選項菜單應用程序安卓上滑菜單

本文實例講述了Android的三種菜單。

分享給大家供大家參考。

具體分析如下:  Android的菜單分為三種類型:選項菜單(Option Menu)、上下文菜單(Context Menu)、子菜單(Sub Menu)  一.選項菜單  當用戶單擊設備上的菜單按鈕(Menu),觸發事件彈出的菜單就是選項菜單。

選項菜單最多只有六個,超過六個第六個就會自動顯示 更多 選項來展示顯示。

  創建方法:  1、覆蓋Activity的onCreateOptionsMenu(Menu menu)方法,當我們第一次打開菜單時調用。

  2、調用Menu的add()方法添加菜單項(MenuItem),可以調用MenuItem的setIcon()方法為菜單項設置圖標。

  3、當菜單項(MenuItem)被選中時,覆蓋Acitivy的onOptionsMenuSelected()方法響應事件。

  二、上下文菜單  當用戶長按Activity頁面時,彈出的菜單我們稱為上下文菜單。

我們經常在Windows中用鼠標右鍵單擊彈出的菜單就是上下文菜單。

  1、覆蓋Activity的onCreateContextMenu()方法,調用Menu的add方法添加菜單項MenuItem  2、覆蓋onContextItemSelected()方法,響應菜單單擊事件  3、調用registerForContextMenu()方法,為視圖注冊上下文菜單  三、子菜單  子菜單就是將相同功能的分組進行多級顯示的一種菜單,比如,Windows的文件菜單中就有新建,打開,關閉等子菜單。

  創建子菜單的方法  1、覆蓋Activity的onCreateOptionsMenu()方法,調用Menu的addSubMenu()方法添加子菜單項  2、調用SubMenu的add()飯飯,添加子菜單項  3、覆蓋onCreateItemSelected()方法,響應菜單單擊事件  ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 public class Main extends Activity { // 菜單項ID // FIRST為Menu類中的整形常量 private static final int ITEM1 = Menu.FIRST; private static final int ITEM2 = Menu.FIRST 1; private static final int ITEM3 = Menu.FIRST 2; private static final int ITEM4 = Menu.FIRST 3; private static final int ITEM5 = Menu.FIRST 4; private static final int ITEM6 = Menu.FIRST 5; private static final int ITEM7 = Menu.FIRST 6; TextView myTV; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); myTV = (TextView) findViewById(R.id.myTV); // 此時為myTv設置上下文菜單,長按TextView時響應函數 registerForContextMenu(myTV); } @Override // 點擊菜單按鈕響應的事件 public boolean onCreateOptionsMenu(Menu menu) { /* 一下代碼為選項菜單測試 // 添加菜單項 // public abstract MenuItemadd(int groupId, int itemId, int order, CharSequence title) // 菜單所在的group,菜單的ID,排列順序,顯示的文字 // add()方法返回一個MenuItem對象。

而setIcon是MenuItem的方法 menu.add(0, ITEM1, 0, 開始).setIcon(R.drawable.ic_launcher); menu.add(0, ITEM2, 0, 開始1); menu.add(1, ITEM3, 0, 開始2); menu.add(1, ITEM4, 0, 開始3); menu.add(1, ITEM5, 0, 開始4); // menu.add(0, ITEM6, 0, 開始5); // menu.add(0, ITEM7, 0, 開始6); */ /** * 以下代碼為添加子菜單的測試代碼 */ // 添加子菜單 SubMenu subFile = menu.addSubMenu(文件); SubMenu editFile = menu.addSubMenu(編輯); // 為子菜單添加菜單項 subFile.add(0, ITEM1, 0, 新建); subFile.add(0, ITEM2, 0, 打開); return true; } @Override // 菜單被選中時觸發的事件 public boolean onOptionsItemSelected(MenuItem item) { /* // 在此說明一下,Menu相當于一個容器,而MenuItem相當于容器中容納的東西 switch(item.getItemId()) { case ITEM1: // 設置Activity的Title setTitle(開始游戲1); break; case ITEM2: setTitle(開始游戲2); break; case ITEM3: setTitle(開始游戲3); break; case ITEM4: setTitle(開始游戲4); break; case ITEM5: setTitle(開始游戲5); break; case ITEM6: setTitle(開始游戲6); break; case ITEM7: setTitle(開始游戲7); break; } */ /** * 子菜單項響應代碼 */ switch(item.getItemId()) { case ITEM1: // 設置Activity的Title setTitle(新建文件); break; case ITEM2: setTitle(打開文件); break; } return true; } @Override // 創建上下文菜單 public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { // 向上下文菜單中添加菜單項 // 注意此處的menu是ContextMenu menu.add(0, ITEM1, 0, 紅色背景); menu.add(0, ITEM2, 0, 綠色背景); menu.add(1, ITEM3, 0, 白色背景); } @Override public boolean onContextItemSelected(MenuItem item) { switch(item.getItemId()) { case ITEM1: myTV.setBackgroundColor(Color.RED); break; case ITEM2: myTV.setBackgroundColor(Color.GREEN); break; case ITEM3: myTV.setBackgroundColor(Color.WHITE); break; } return true; } }   希望本文所述對大家的Android程序設計有所幫助。

版權聲明:本文由 弘晶瀅 整理編輯。

原標題:菜單選擇android,android二級菜單

轉載注明出處:http://www.dn9ww09s.icu/fault/15558.html

文章評論

    共有條評論來說兩句吧...

    用戶名:

    驗證碼:

作者推薦

  • 有特點的自我介紹,自我介紹特點

    有特點的自我介紹,自我介紹特點 相關圖片自我介紹優點不能在宏條件列中使用SQL表達式。一般來說,直接運行宏只是一個測試。在確保宏設計正確后,可以將宏附加到窗體、報表或控件以響應事件,或創建自定義菜單命令以運...

  • 機票查詢,數據庫查詢方法有哪些

    機票查詢,數據庫查詢方法有哪些 相關圖片如何提高數據庫查詢速度一。where子句中的連接順序:Oracle使用自下而上的順序來解析where子句。根據這一原理,表之間的連接必須在其他條件之前寫入,并且能夠過濾出最大記錄數的數...

  • ios信號量,iOS socket

    ios信號量,iOS socket 相關圖片基于信號量同步的雙緩沖區為了解決這個問題,我提出了兩個解決方案:第一個是在執行操作之前確定操作是否已經初始化。如果尚未初始化,則使用數組隊列存儲操作參數和調用的方...

  • hello the world,helloworld是什么

    hello the world,helloworld是什么 相關圖片hello world是什么意思本文主要介紹react JS的HelloWorld編程及其相關知識。React是一個由Facebook開發的開源JS框架。它的受歡迎程度目前正在飆升。您可以參考hello world是什么意...

  • 用戶IP地址,IP地址范圍

    用戶IP地址,IP地址范圍 相關圖片IP地址的分類在asp.net環境中獲取用戶IP的公共類。在許多情況下,我們需要記錄訪問者的IP地址。此類可以使用system.web.httpcontext.currentIP地址格式...

  • 自定義標簽在哪,自定義標簽是什么意思

    自定義標簽在哪,自定義標簽是什么意思 相關圖片自定義個性標簽大全一般來說,要開發JSP自定義標記,我們需要參考以下兩個包:import javax。Servlet。JSP。標簽文本。*. 首先,我們需要對開發自定義標記所涉及qq自定義標簽高冷...

  • 安全隱患措施有哪些,身邊的安全隱患及措施

    安全隱患措施有哪些,身邊的安全隱患及措施 相關圖片避免安全隱患隨著Internet的發展,web技術日新月異。ASP(active server pages)作為繼通用網關接口(CGI)之后的一種典型的服務器端Web設計技我身邊的安全隱患及改正措施...

  • 安裝軟件說端口號被占用解決方法,解決端口占用

    安裝軟件說端口號被占用解決方法,解決端口占用 相關圖片8080端口號被占用本文主要介紹Android開發中端口號占用問題的解決方案。本文給出了一種簡單實用的方法來解決這個煩人的問題。你可以參考Android開發中的端口號占用問題,這個查看8...

  • navicat怎么連接mysql,navicat連接不上mysql

    navicat怎么連接mysql,navicat連接不上mysql 相關圖片mysql navicat最新版本的Navicat for MySQL有自己的注冊代碼。它已經被綠化了。您可以通過將其解壓縮到任何目錄來運行它。Navicat premium是一個多連接navicat連接mysql...

  • 如何建立空數據庫,怎么創建空數據庫

    如何建立空數據庫,怎么創建空數據庫 相關圖片建立空數據庫的快捷鍵現在我們知道了在構建數據庫之前應該注意的問題,讓我們從最基本的新空數據庫開始了解access數據庫的結構。在access 2000中,單擊access窗口左上角怎么新建空數據...

熱評文章

  • 編輯啟動選項,電腦高級啟動選項

    編輯啟動選項,電腦高級啟動選項 相關圖片win10進入高級啟動模式大多數服務器管理員知道MySQL數據庫管理系統(RDBMS)是一個高度靈活的軟件塊,具有廣泛的啟動選項,可以用來修改相關的行為。然而,大多數人并不知道標準的...

  • java多線程編程注意事項,多線程注意事項

    java多線程編程注意事項,多線程注意事項 相關圖片java多線程編程培訓機構本文主要介紹了C 中MFC多線程編程注意事項的相關信息。您可以參考多線程編程中最簡單的方法,即使用afxbeginthread創建工作線程。看看這個函數的描述c多線程編...

  • php比較大小,php三個數比較大小

    php比較大小,php三個數比較大小 相關圖片php數組值比較大小本文給出了一個例子來說明PHP如何計算整個目錄的大小。與您分享以供參考。具體實現方法如下:?1234567891012131415161718192021222php字體大小...

  • 蓋格計數器,蓋革計數器原理

    蓋格計數器,蓋革計數器原理 相關圖片手持計數器下面介紹如何用數據庫實現簡單計數器。另存為計數。ASP<%set conn=服務器。創建對象(ADODB。連接)conn.open driver={Micros程序計數器...

  • eth0基本配置,電腦基本配置有哪些

    eth0基本配置,電腦基本配置有哪些 相關圖片主機基本配置一。為結構應用程序配置web.xml文件步驟1:配置ActionServletServletServletnameAction/ServletnameServl汽車基本配置...

  • 什么是開源項目,如何加入開源項目

    什么是開源項目,如何加入開源項目 相關圖片go 開源項目一。在許多IOS開源項目中,afnetworking是最受開發人員歡迎的庫項目。Afnetworking是一個輕量級的IOS和Mac OSX網絡通信類庫。現在它php開源項目...

  • 安卓彈出消息框,如何設置手機qq不彈出

    安卓彈出消息框,如何設置手機qq不彈出 相關圖片怎么讓qq不彈出消息框我想這個問題經常被問到。實際上,這不是一個難題。我自己整理了索引,方便新手參考。在ASP彈出消息對話框中,確認對話框引用。彈出消息框的最簡單方法是在...

  • 查找數組元素的位置,數組查找某個元素

    查找數組元素的位置,數組查找某個元素 相關圖片在順序表中查找元素本文主要介紹了在JavaScript中添加、查找和刪除元素的方法,該方法簡單實用。如果需要的話你可以參考一下。代碼很簡單,這里沒有太多的廢話。?12345678selenium定位...

  • 打開Windows命令行,windows10命令行

    打開Windows命令行,windows10命令行 相關圖片windows常用命令行命令要從命令行啟動mysqld服務器,應啟動控制臺窗口(或DOS窗口),并輸入命令:C:C:program filesmysqlmysqlsqlsqlserver5windows命令行工具...

  • 和包怎么用,android獲取包名

    和包怎么用,android獲取包名 相關圖片和包券怎么激活Oracle獲取包所依賴的所有對象,包括其子對象。它使用一個臨時表來記錄被遍歷的節點,并使用層數來記錄被遍歷的包。總的來說,它可以改變很多。Declare—獲取和包券...

關注微信

变脸官网查询