在Action添加个TextView控件(上下文演示用);

package com.example.test;

import android.app.Activity;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.Menu;
import android.view.MenuItem;
import android.view.SubMenu;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity {

@Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  TextView tv=(TextView)findViewById(R.id.ok);
  this.registerForContextMenu(tv);
 }

@Override
 public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
  //menu.add(0,menu.FIRST+1,1,"老王");
  SubMenu lw=menu.addSubMenu("laowang");
  lw.add(0,menu.FIRST+4,0,"小王 ");
  lw.add(0,menu.FIRST+5,0,"小王8 ");
  menu.add(0,menu.FIRST+2,2,"老李");
  menu.add(0,menu.FIRST+3,3,"老占美国");
  //super.onCreateContextMenu(menu, v, menuInfo);
 }
 @Override
 public boolean onContextItemSelected(MenuItem item) {

switch (item.getItemId()){
  case Menu.FIRST+1:Toast.makeText(getApplicationContext(),item.getTitle() ,Toast.LENGTH_LONG).show();break;
  case Menu.FIRST+2:Toast.makeText(getApplicationContext(),item.getTitle() ,Toast.LENGTH_LONG).show();break;
  case Menu.FIRST+5:Toast.makeText(getApplicationContext(),item.getTitle() ,Toast.LENGTH_LONG).show();break;
  }
  return true;
 }

@Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // Inflate the menu; this adds items to the action bar if it is present.
  //getMenuInflater().inflate(R.menu.main, menu);
  menu.add(0,menu.FIRST+1,0,"老王") ;
  menu.add(0,menu.FIRST+2,0,"老张") ;
  menu.add(0,menu.FIRST+3,0,"老李") ;
  return true;
 }

public boolean onOptionsItemSelected(MenuItem item) {
  
  switch (item.getItemId()){
  case Menu.FIRST+1:Toast.makeText(getApplicationContext(),item.getTitle() ,Toast.LENGTH_LONG).show();break;
  case Menu.FIRST+2:Toast.makeText(getApplicationContext(),item.getTitle() ,Toast.LENGTH_LONG).show();break;
  case Menu.FIRST+3:Toast.makeText(getApplicationContext(),item.getTitle() ,Toast.LENGTH_LONG).show();break;
  }
  return super.onOptionsItemSelected(item);
 }
}

Android 菜单和上下文演示的更多相关文章

  1. electron-Menu创建原生应用菜单和上下文菜单。

    当在MacOS.Windows.Linux中使用menu设置程序菜单时,会设置在各个程序窗体的顶层. Note: 如果没有在app中设置一个菜单,系统会自动生成一个默认菜单, 默认生成的菜单中包含了一 ...

  2. Android菜单详解(四)——使用上下文菜单ContextMenu

    之前在<Android菜单详解(二)——创建并响应选项菜单>和<Android菜单详解(三)——SubMenu和IconMenu>中详细讲解了选项菜单,子菜单和图标菜单.今天接 ...

  3. 【转】Android菜单详解——理解android中的Menu--不错

    原文网址:http://www.cnblogs.com/qingblog/archive/2012/06/08/2541709.html 前言 今天看了pro android 3中menu这一章,对A ...

  4. 简单的 Android 菜单

    Android 创建简单的菜单 一:上下文菜单: 1.在 res 下创建菜单项资源文夹 menu app->右击res->new->android resourse director ...

  5. Android菜单

    Android菜单概述 菜单是Activity的一个重要组成部分,它为用户操作提供了快捷的途径.Android提供了一个简单的框架来向程序中添加标准菜单 . 一.创建一个菜单资源 你需要在一个XML ...

  6. 理解JavaScript中的作用域和上下文

    JavaScript对于作用域(Scope)和上下文(Context)的实现是这门语言的一个非常独到的地方,部分归功于其独特的灵活性. 函数可以接收不同的的上下文和作用域.这些概念为JavaScrip ...

  7. NLog路由规则和上下文信息

    NLog配置路由规则和上下文信息 rules: 规则节点 logger:一个路由规则 <rules> <!--<logger name="*" writeT ...

  8. Android菜单详解(一)——理解android中的Menu

    前言 今天看了pro android 3中menu这一章,对Android的整个menu体系有了进一步的了解,故整理下笔记与大家分享. PS:强烈推荐<Pro Android 3>,是我至 ...

  9. Django 学习第十一天——中间键和上下文处理器

    一.中间键的引入: Django中间件(Middleware)是一个轻量级.底层的"插件"系统,可以介入Django的请求和响应处理过程,修改Django的输入或输出. djang ...

随机推荐

  1. CodeForces 154A Hometask dp

    题目链接: http://codeforces.com/problemset/problem/154/A 题意: 给你一个字符串,和若干模板串(长度为2),至少删除多少个字母,使得字符串的字串里面没有 ...

  2. 大白话Docker入门(一)

    摘要: #大白话Docker入门(一) 随着docker现在越来越热门,自己也对docker的好奇心也越来越重,终于忍不住利用了一些时间把docker学习一遍.目前的资料不少,但是由于docker的发 ...

  3. Java中的网络编程-1

    计算机网络:将分布在不同地区的计算机与专门的外部设备用通信线路互连成一个规模大.功能强的网络系统, 从而使众多计算机 可以方便的互相传递信息, 共享硬件.软件.数据信息等资源. 计算机网络的主要功能: ...

  4. PHP Mailer 发送邮件

    <?php /* 下载网址 https://github.com/PHPMailer/PHPMailer 打开下载的压缩包文件目录 将 PHPMailer-master 下的 src 文件夹复制 ...

  5. get_list_by_where

    /** * 查询数据 * @param $param * @param bool $get_rows 或者总数 * @param bool $get_one 或者一条记录 * @param bool ...

  6. sublime插件时间

    import datetime import sublime_plugin class AddCurrentTimeCommand(sublime_plugin.TextCommand): def r ...

  7. Win server 2016 升级 Win server 2019 [测试验证]

    . 给win server 2016 挂在 win server 2019 的安装盘 2. 点击setup 直接进行安装操作  选择不下载更新, 然后到达输入序列号的界面 序列号为: WMDGN-G9 ...

  8. Fetch POST All in One

    Fetch POST All in One FPAIO "use strict"; /** * * @author xgqfrms * @license MIT * @copyri ...

  9. mvc4中使用部分视图局部刷新实例

    如上效果图,网页中有主视图(上)和部分视图(下),点击提交会把文本框中的值发送到服务器,再返回所有添加的信息,在下方局部更新(只更新部分视图),实现如下: 1.网页主视图代码: @model MvcA ...

  10. 【Python】Python基础教程系列目录

    Python是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. 在现在的工作及开发当中,Python的使用越来越广泛,为了方便大家的学习,Linux大学 特推出了 <Python基 ...