ContextMenu上下文菜单 PopupMenu弹出式菜单 小例子
来源:互联网 发布:pr cc 2015 mac 下载 编辑:程序博客网 时间:2024/05/29 13:59
___________________________________________________________________________________________
res/menu中代码:
popup_menu.xml
<item android:id="@+id/color_red" android:title="红色" android:orderInCategory="10" android:icon="@android:drawable/ic_dialog_info" /> <item android:id="@+id/color_yellow" android:title="黄色" android:orderInCategory="20" android:icon="@android:drawable/ic_dialog_info" /> <item android:id="@+id/color_green" android:title="绿色" android:orderInCategory="10" android:icon="@android:drawable/ic_dialog_info" /></menu>
————————————————————————————————————————————
activity类代码
public class Main2Activity extendsAppCompatActivity { private TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); textView = (TextView) findViewById(R.id.textView); registerForContextMenu(textView);//把上下文菜单注册到某一个组件上,那么在长按该组件会弹出上下文菜单 } @Override public void onCreateContextMenu(ContextMenu menu, View v,ContextMenu.ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); System.out.println(menu); System.out.println(v); System.out.println(menuInfo); getMenuInflater().inflate(R.menu.context_menu,menu); } @Override public boolean onContextItemSelected(MenuItem item) {// item.getTitle(); System.out.println(item.getMenuInfo()); AdapterView.AdapterContextMenuInfo info=(AdapterView.AdapterContextMenuInfo) item.getMenuInfo(); System.out.println(info.targetView); switch (item.getItemId()){ case R.id.color_red: textView.setBackgroundColor(Color.RED); break; case R.id.color_green: textView.setBackgroundColor(Color.GREEN); break; case R.id.color_yellow: textView.setBackgroundColor(Color.YELLOW); break; } return super.onContextItemSelected(item); }}
public class Main4Activity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main4); } public void showPopupMenuClick(View view){ //创建弹出式菜单(context,要把菜单显示在哪个组件的旁边) PopupMenu popupMenu = new PopupMenu(this,view); popupMenu.getMenuInflater().inflate(R.menu.popup_menu,popupMenu.getMenu()); popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { switch (item.getItemId()){ case R.id.color_red: Toast.makeText(Main4Activity.this, "red", Toast.LENGTH_SHORT).show(); break; case R.id.color_green: Toast.makeText(Main4Activity.this, "green", Toast.LENGTH_SHORT).show(); break; case R.id.color_yellow: Toast.makeText(Main4Activity.this, "yellow", Toast.LENGTH_SHORT).show(); break; } return true; } }); popupMenu.show(); }}
0 0
- ContextMenu上下文菜单 PopupMenu弹出式菜单 小例子
- 使用PopupMenu创建弹出式菜单
- 设置PopupMenu创建弹出式菜单
- Android中的菜单-ContextMenu,PopupMenu
- android简单实例--------普通菜单optionMenu,上下文菜单ContextMenu,弹出式菜单的使用PopuMenu(一)
- android简单实例--------普通菜单optionMenu,上下文菜单ContextMenu,弹出式菜单的使用PopuMenu(二)
- android简单实例--------普通菜单optionMenu,上下文菜单ContextMenu,弹出式菜单的使用PopuMenu(三)
- 上下文菜单(ContextMenu)
- ContextMenu上下文菜单
- 使用上下文菜单ContextMenu
- 上下文菜单ContextMenu
- Android--ContextMenu上下文菜单
- 【Android】上下文菜单contextMenu
- ContextMenu(上下文菜单)
- ContextMenu上下文菜单
- ContextMenu上下文菜单
- ContextMenu上下文菜单
- Contextmenu上下文菜单
- FileChannel、ByteBuffer对文件操作过程对比
- 博文收藏
- float使用
- 给程序员的建议
- Binary Tree Level Order Traversal II
- ContextMenu上下文菜单 PopupMenu弹出式菜单 小例子
- spring之BeanFactoryAware接口
- Android多点触控技术
- 红帽6 RHCE&RHCS认证培训笔记(6)
- shell 十三问
- Pattern Matcher group 简单例子正则表达式
- 对程序员来说,提高薪水最好的建议是什么?
- uva104
- spring roo 开发meavn项目(四)文件操作:上传,下载,本地复制,删除文件