Android-实现选项菜单(复制、剪切、粘贴)

1、打开 res\values 目录下的 string.xml 文件,创建各个菜单项标题和编辑框要显示的默认文本所需要的字符串变量

<resources>    
        <string name="app_name">InternationalizedMenu</string>        
        <string name="copy">复制</string>    
        <string name="cut">剪切</string>    
        <string name="prase">粘贴</string>
</resources>

2、在 res 创建一个menu 目录,并在该目录下创建一个contextmenu.xml 的菜单资源文件

<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/item1" android:title="@string/copy" android:alphabeticShortcut="c"></item>
    <item android:id="@+id/item2" android:title="@string/cut" android:alphabeticShortcut="x"></item>
    <item android:id="@+id/item3" android:title="@string/prase" android:alphabeticShortcut="v"></item>
</menu>

3、在 main.xml 中,添加一个 EditView 组件,并设置默认显示文本

<EditText
    android:layout_width="200dp"
    android:layout_height="50dp"
    android:id="@+id/editText"
    android:hint="请输入检索文字"/>

4、在 Activity 中,重写onCreateContextMenu()和onContextItemSelected()方法

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    editText = (EditText) this.findViewById(R.id.editText);
    registerForContextMenu(editText); // 为编辑框创建上下文菜单

}

public void onCreateContextMenu(ContextMenu menu, View view, ContextMenuInfo contextMenuInfo){
    MenuInflater inflater = new MenuInflater(MainActivity.this); // 实例化一个 MenuInflater 对象
    inflater.inflate(R.menu.contextmenu,menu); // 解析菜单文件
}

public boolean onContextItemSelected(MenuItem item){
    Toast.makeText(this, item.getTitle(), Toast.LENGTH_SHORT).show();
    return true;
}```
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 上面的效果图其实包含了两种菜单。首先,右上角的那个加号和竖着的三点,是Options菜单。再者,在屏幕正中的这个是...
    uncle_charlie阅读 1,495评论 0赞 0
  • 转载请说明出处:Android开发细节--查漏补缺(一):UI篇 引言:一开始,先和大家可能从最开始接触Andro...
    androidjp阅读 1,229评论 0赞 9
  • 在 Activity 获取字符串资源: this.getString(R.string.hello) 从 Cont...
    allencaicai阅读 1,060评论 0赞 1
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 17,091评论 4赞 61
  • 2017年9月29日: 周五,雨。 秋天来的很突然,一场秋雨过后,秋天就慢慢来了。 这两天一直在下雨,温度也降了很...
    周周就是周周啊阅读 343评论 0赞 0

友情链接更多精彩内容