国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android上下文菜單用法實例分析

2020-04-11 11:26:03
字體:
來源:轉載
供稿:網友

本文實例講述了Android上下文菜單用法。分享給大家供大家參考。具體如下:

上下文菜單不同于選項菜單,選項菜單服務于Activity,而上下文菜單則是注冊到某個View對象上的。

如果一個View對象注冊了上下文菜單,用戶可以通過長按該View對象以呼出上下文菜單。

上下文菜單不支持快捷鍵,其菜單選項也不能附帶圖標,但是可以為上下文菜單的標題指定圖標。

以下模擬上下文菜單

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);  }  /**   * 初始化上下文菜單   *    * 每次調出上下文菜單時都會被調用一次   */  @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);  }  /**   * 當用戶選擇了上下文菜單選項后調用該事件   */  @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;  }}

運行結果:

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 柘荣县| 林州市| 涞源县| 资中县| 新平| 高青县| 玉门市| 南宫市| 凤翔县| 德阳市| 富裕县| 青铜峡市| 呼图壁县| 新田县| 改则县| 宁陵县| 远安县| 肇庆市| 镇江市| 舒城县| 海林市| 巢湖市| 清涧县| 洪江市| 广河县| 湛江市| 呼图壁县| 辰溪县| 衡东县| 营口市| 通榆县| 贵溪市| 盐边县| 芜湖县| 灵宝市| 松溪县| 巴彦淖尔市| 金川县| 建水县| 武宁县| 万宁市|