menu小节
作者:互联网
今天学了menu的简单应用,遇到了一些问题,继续加油
1.OptionMenu(选项菜单)
这种菜单是在安卓界面上的有上角有三个点,点击三个点即可弹出菜单,下面直接上代码(实现的效果就是在菜单中有颜色的选项,选中哪个颜色就可以把该界面中的TextView改变成那种颜色)
首先就是TextView初始化控件(很简单略过)
然后定义几个颜色值
1 private int RED = 1; 2 private int BULLE = 2; 3 private int YELLOW = 3;
重写onCreateOptionsMenu和onOptionsItemSelected方法
onCreateOptionsMenu方法
1 public boolean onCreateOptionsMenu(Menu menu) { 2 menu.add(1, RED, 1, "红色"); 3 menu.add(1, BULLE, 2, "蓝色"); 4 menu.add(1, YELLOW, 3, "黄色"); 5 return super.onCreateOptionsMenu(menu); 6 }
onOptionsItemSelected方法
1 public boolean onOptionsItemSelected(MenuItem item) { 2 int id = item.getItemId(); 3 switch (id) { 4 case 1: 5 textView.setTextColor(Color.RED); 6 break; 7 case 2: 8 textView.setTextColor(Color.BLUE); 9 break; 10 case 3: 11 textView.setTextColor(Color.YELLOW); 12 break; 13 } 14 15 return super.onOptionsItemSelected(item); 16 }
2.ContextMenu(上下文菜单)
使用xml文件来实现menu样式
首先我们要在res下创建menu文件夹(此时需要调到项目)
(实现的效果是长按一个textview放开手后会弹出菜单,选中颜色来改变textview中文字颜色)
然后再menu文件夹下创建menu文件menu_context.xml
代码如下:
1 <?xml version="1.0" encoding="utf-8"?> 2 <menu xmlns:android="http://schemas.android.com/apk/res/android"> 3 <!-- 定义一组单选按钮 --> 4 <!-- checkableBehavior的可选值由三个:single设置为单选,all为多选,none为普通选项 --> 5 <group android:checkableBehavior="none"> 6 <item android:id="@+id/red" android:title="红色"></item> 7 <item android:id="@+id/bule" android:title="蓝色"></item> 8 <item android:id="@+id/yellow" android:title="黄色"></item> 9 </group> 10 </menu>
textview及其初始化简单,略过
重写onCreateContextMenu和onContextItemSelected方法
1 public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { 2 MenuInflater inflater=new MenuInflater(this); 3 inflater.inflate(R.menu.menu_context,menu); 4 super.onCreateContextMenu(menu, v, menuInfo); 5 }
1 public boolean onContextItemSelected(MenuItem item) { 2 switch (item.getItemId()){ 3 case R.id.bule: 4 textView1.setTextColor(Color.BLUE); 5 break; 6 case R.id.red: 7 textView1.setTextColor(Color.RED); 8 break; 9 case R.id.yellow: 10 textView1.setTextColor(Color.YELLOW); 11 break; 12 } 13 return super.onContextItemSelected(item); 14 }
3.SubMenu(子菜单)
就是嵌套menu和上下文菜单实现方法很像,略过
标签:case,菜单,menu,小节,break,item,setTextColor 来源: https://www.cnblogs.com/z-cg/p/12401448.html