Android如何给Textview添加菜单项详解(Java)
TextView是android里面用的最多的控件,TextView类似一般UI中的Label,TextBlock等控件,只是为了单纯的显示一行或多行文本,下面这篇文章主要给大家介绍了关于Android如何给Textview添加菜单项的相关资料,需要的朋友可以参考下
目录
背景描述:
解决办法
具体步骤:
1.创建菜单文件
2.给activity添加菜单,重写菜单监听事件
3. 给控件添加菜单响应属性
总结
背景描述:
界面上有一个Textview和一个Button,当我们点击Textview时会弹出一个菜单,然后我们选择一个选项,最后点击按钮的时候,就会根据选择的菜单项执行相应的函数。
解决办法
总共分三个步骤:
1.首先在res文件夹下创建menu文件夹,然后创建菜单文件main.xml
2.在Activity中添加菜单,具体怎么添加,先定义菜单按钮 PopupMenu,然后重写菜单监听事件
3.最后给需要弹出菜单的控件(如Textview添加属性android:onClick=“menuClick”)
具体步骤:
1.创建菜单文件
1 2 3 4 5 6 7 8 9 10 11 12 13 | <? xml version = "1.0" encoding = "utf-8" ?> < menu xmlns:android = "http://schemas.android.com/apk/res/android" > < item android:id = "@+id/to_detail" android:title = "细节增强" /> < item android:id = "@+id/to_fudiao" android:title = "浮雕效果" /> < item android:id = "@+id/to_mosic" android:title = "马赛克效果" /> < item android:id = "@+id/to_frost" android:title = "点状图" /> < item android:id = "@+id/to_spread" android:title = "毛玻璃" /> </ menu > |
2.给activity添加菜单,重写菜单监听事件
创建弹出菜单变量
1 | private PopupMenu popupMenu; //定义菜单按钮 |
重写菜单监听事件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | //重写菜单监听事件 public void menuClick(View view){ popupMenu = new PopupMenu( this ,view); getMenuInflater().inflate(R.menu.main,popupMenu.getMenu()); popupMenu.setOnMenuItemClickListener( new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { switch (item.getItemId()){ case R.id.to_detail: flag.setText( "细节增强" ); break ; case R.id.to_fudiao: flag.setText( "浮雕效果" ); break ; case R.id.to_mosic: flag.setText( "马赛克" ); break ; case R.id.to_frost: flag.setText( "点状图" ); break ; case R.id.to_spread: flag.setText( "毛玻璃" ); break ; } return true ; } }); popupMenu.show(); } |
3. 给控件添加菜单响应属性
总结
到此这篇关于Android如何给Textview添加菜单项详解的文章就介绍到这了
原文链接:https://blog.csdn.net/weixin_45941099/article/details/121895145