Android上下文菜單用法實例分析
本文實例講述了Android上下文菜單用法。分享給大家供大家參考。具體如下:
上下文菜單不同于選項菜單,選項菜單服務(wù)于Activity,而上下文菜單則是注冊到某個View對象上的。
如果一個View對象注冊了上下文菜單,用戶可以通過長按該View對象以呼出上下文菜單。
上下文菜單不支持快捷鍵,其菜單選項也不能附帶圖標(biāo),但是可以為上下文菜單的標(biāo)題指定圖標(biāo)。
以下模擬上下文菜單
main.xml布局文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:id="@+id/LinearLayout01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android">
<EditText android:text="第一文本框"
android:id="@+id/editText01"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<EditText android:text="第二文本框"
android:id="@+id/editText02"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
MeunActivity類
package com.ljq.activity;
import android.app.Activity;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.MenuItem;
import android.view.View;
import android.view.ContextMenu.ContextMenuInfo;
import android.widget.EditText;
public class MeunActivity extends Activity {
private EditText editText01=null;
private EditText editText02=null;
private final int MENU1 = 1;
private final int MENU2 = 2;
private final int MENU3 = 3;
private final int MENU4 = 4;
private final int MENU5 = 5;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
editText01=(EditText)findViewById(R.id.editText01);
editText02=(EditText)findViewById(R.id.editText02);
//為View對象注冊上下文菜單
this.registerForContextMenu(editText01);
this.registerForContextMenu(editText02);
}
/**
* 初始化上下文菜單
*
* 每次調(diào)出上下文菜單時都會被調(diào)用一次
*/
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
menu.setHeaderIcon(R.drawable.header);
switch (v.getId()) {
case R.id.editText01:
menu.add(0, MENU1, 0, "菜單項1");
menu.add(0, MENU2, 0, "菜單項2");
menu.add(0, MENU3, 0, "菜單項3");
break;
case R.id.editText02:
menu.add(0, MENU4, 0, "菜單項4");
menu.add(0, MENU5, 0, "菜單項5");
break;
}
//super.onCreateContextMenu(menu, v, menuInfo);
}
/**
* 當(dāng)用戶選擇了上下文菜單選項后調(diào)用該事件
*/
@Override
public boolean onContextItemSelected(MenuItem item) {
switch (item.getItemId()) {
case MENU1:
case MENU2:
case MENU3:
editText01.append("\n"+item.getTitle()+"被按下");
break;
case MENU4:
case MENU5:
editText02.append("\n"+item.getTitle()+"被按下");
break;
}
return true;
}
}
運行結(jié)果:


希望本文所述對大家的Android程序設(shè)計有所幫助。
- Android編程實現(xiàn)為ListView創(chuàng)建上下文菜單(ContextMenu)的方法
- android popwindow實現(xiàn)左側(cè)彈出菜單層及PopupWindow主要方法介紹
- Android ListView長按彈出菜單二種實現(xiàn)方式示例
- android自定義popupwindow仿微信右上角彈出菜單效果
- Android仿QQ滑動彈出菜單標(biāo)記已讀、未讀消息
- 簡單實現(xiàn)Android彈出菜單效果
- Android PopupWindow實現(xiàn)右側(cè)、左側(cè)和底部彈出菜單
- Android 使用PopupWindow實現(xiàn)彈出更多的菜單實例詳解
- Android編程實現(xiàn)帶有圖標(biāo)的ListView并帶有長按菜單效果示例
- Android組件實現(xiàn)長按彈出上下文菜單功能的方法
相關(guān)文章
Android開發(fā)學(xué)習(xí)路線的七大階段
這篇文章主要介紹了Android開發(fā)學(xué)習(xí)路線的七大階段,本文講解了Java面向?qū)ο缶幊?、Java Web開發(fā)、android UI編程、android網(wǎng)絡(luò)編程與數(shù)據(jù)存儲、android手機硬件管理等七大階段,需要的朋友可以參考下2015-04-04
android 自定義ScrollView實現(xiàn)背景圖片伸縮的實現(xiàn)代碼及思路
本文純屬個人見解,是對前面學(xué)習(xí)的總結(jié),如有描述不正確的地方還請高手指正~,首先還是按照通例給大家看下示例.2013-05-05
Android Handler,Message,MessageQueue,Loper源碼解析詳解
這篇文章主要介紹了Android Handler,Message,MessageQueue,Loper源碼解析詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-09-09
Android實現(xiàn)聯(lián)動下拉框 下拉列表spinner的實例代碼
這篇文章介紹了Android實現(xiàn)聯(lián)動下拉框 下拉列表spinner的實例代碼,有需要的朋友可以參考一下2013-10-10
Android使用Sensor感應(yīng)器獲取用戶移動方向(指南針原理)
這篇文章主要介紹了Android使用Sensor感應(yīng)器獲取用戶移動方向的方法,實例分析了指南針原理極其應(yīng)用,需要的朋友可以參考下2015-12-12
基于Android如何實現(xiàn)將數(shù)據(jù)庫保存到SD卡
有時候為了需要,會將數(shù)據(jù)庫保存到外部存儲或者SD卡中(對于這種情況可以通過加密數(shù)據(jù)來避免數(shù)據(jù)被破解),本文給大家分享Android如何實現(xiàn)將數(shù)據(jù)庫保存到SD卡,對android數(shù)據(jù)庫sd卡相關(guān)知識感興趣的朋友一起學(xué)習(xí)吧2015-12-12
Android開發(fā)Flutter?桌面應(yīng)用窗口化實戰(zhàn)示例
這篇文章主要為大家介紹了Android開發(fā)Flutter?桌面應(yīng)用窗口化實戰(zhàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-09-09
Android中實現(xiàn)詞組高亮TextView方法示例
高亮顯示大家應(yīng)該都不陌生,在開發(fā)中經(jīng)常會遇到這個需求,所以下面這篇文章主要給大家介紹了關(guān)于Android中實現(xiàn)詞組高亮TextView的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。2017-10-10

