android上下文菜单
XML:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<TextView android:id="@+id/txt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="上下文菜单"
android:textSize="25sp"/>
</RelativeLayout>
context_menu.xml:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_Edit"
android:orderInCategory="100"
android:showAsAction="never"
android:title="编辑"/>
<item
android:id="@+id/action_file"
android:orderInCategory="99"
android:title="打开"/>
<item
android:id="@+id/action_file"
android:orderInCategory="99"
android:title="复制"/>
<item android:title="Window">
<menu>
<item
android:id="@+id/newWin"
android:title="New Window"/>
<item
android:id="@+id/newEdit"
android:title="New Editor"/>
</menu>
</item>
</menu>
Activtiy:
public class MenuActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.menu);
TextView t=(TextView)findViewById(R.id.txt);
registerForContextMenu(t);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
//menu.add(Menu.NONE, Menu.FIRST, 1, "File");
menu.add(Menu.NONE, Menu.FIRST+1, 2, "Edit");
menu.add(Menu.NONE, Menu.FIRST+2, 3, "Refactor");
menu.add(Menu.NONE, Menu.FIRST+3, 4, "Source");
menu.add(Menu.NONE, Menu.FIRST+4, 5, "Navigate");
SubMenu file=menu.addSubMenu("File");
file.add(1, Menu.FIRST+20, 1, "新建");
file.add(1, Menu.FIRST+21, 2, "打开");
file.add(1, Menu.FIRST+22, 3, "保存");
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch(item.getItemId()){
case Menu.FIRST+1:
Toast.makeText(this, "你点击了编辑",Toast.LENGTH_LONG).show();
break;
default:
break;
}
return false;
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
MenuInflater inflater=new MenuInflater(this);
inflater.inflate(R.menu.context_menu, menu);
menu.setHeaderTitle("分差差");
}
@Override
public boolean onContextItemSelected(MenuItem item) {
switch(item.getItemId()){
case R.id.action_Edit:
Toast.makeText(this, "你点击了上下文菜单编辑",Toast.LENGTH_LONG).show();
break;
default:
break;
}
return super.onContextItemSelected(item);
}
}
android上下文菜单的更多相关文章
- Android 上下文菜单实现
1.覆盖Activity的onCreateContenxtMenu()方法,调用Menu的add方法添加菜单项(MenuItem). 2.覆盖Activity的onContextItemSelecte ...
- android 上下文菜单详解
本文使用xml来创建上下文菜单 <?xml version="1.0" encoding="utf-8"?> <menu xmlns:andr ...
- Android上下文菜单ContentView详解
ContentView介绍 上下文菜单继承了android.view.Menu,因此我们可以像操作Options Menu那样给上下文菜单增加菜单项.上下文菜单与Options Menu最大的不同在于 ...
- Android 上下文菜单 ContextMenu
public class MainActivity extends Activity { private ListView listView; @Override protected void onC ...
- Android 上下文菜单 ActionMode
public class MainActivity extends Activity { private Button button; private ActionMode actionMode; @ ...
- Android 上下文菜单 PopupMenu
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); s ...
- 不得不吐槽的Android PopupWindow的几个痛点(实现带箭头的上下文菜单遇到的坑)
说到PopupWindow,我个人感觉是又爱又恨,没有深入使用之前总觉得这个东西应该很简单,很好用,但是真正使用PopupWindow实现一些效果的时候总会遇到一些问题,但是即便是人家的api有问题, ...
- Android 的上下文菜单: Context Menu,registerForContextMenu(getListView())
概述: Android 的上下文菜单类似于 PC 上的右键菜单.当为一个视图注册了上下文菜单之后,长按(2 秒左右)这个视图对象就会弹出一个浮动菜单,即上下文菜单.任何视图都可以注册上下文菜单,不过, ...
- android 为组件添加contextMenu上下文菜单
package com.example.fragmentNavigation2.fragment; import android.os.Bundle; import android.support.v ...
随机推荐
- Mongodb优化
本文将从各个层面讲述Mongodb的优化方法
- IIC
IIC多主从,双向传输,只有两根线:一根数据,一根时钟,时钟必须由主机发出控制.初始化时主机把SCL和SDA的电平都拉高,然后在SCL保持高电平时SDA拉低形成一个开始信号,紧接着开始信号就开始发送要 ...
- 【转载】Restarting an analysis in ANSYS
原文地址:http://blog.sina.com.cn/s/blog_4b764640010168ru.html 这是自己最近做的一个例子,一是为了感谢okok论坛给与我的很大的帮助,二是起到抛 ...
- js 测试
今天js测试题目: 被基础题目虐暴......惨不忍睹 1. var num = 2; switch(num){ case 1: console.log("1"); case 2: ...
- MongoDB学习笔记五:聚合
『count』count是最简单的聚合工具,返回集合中的文档数量:> db.foo.count()0> db.foo.insert({"x" : 1})> db. ...
- iOS_Swift初识之使用三种回调方式自定义Button
最近在学习Swift ,发现青玉伏案大神早期用OC写的一篇博客--IOS开发之自定义Button(集成三种回调模式) 很适合用来熟悉Swift的回调方式,于是我就用Swift翻版了一下,具体实现原理 ...
- android studio 插件
引用于:http://www.zhihu.com/question/28026027 adb-idea 支持直接在AS面板中进行ADB操作,个人觉得太实用,上面有哥们已提及,这里再介绍下: Unins ...
- 详细解说Java Spring的JavaConfig注解 【抄】
抄自: http://www.techweb.com.cn/network/system/2016-01-05/2252188.shtml @RestController spring4为了更方便的支 ...
- MYCAT介绍(转)
从定义和分类来看,它是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个M ...
- (document).height()、$(document).scrollTop()
(document).height().$(document).scrollTop(),有需要的朋友可以参考下. jQuery(window).height()代表了当前可见区域的大小,而jQuery ...