首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

通过代码在Android中创建子菜单

在Android开发中,通过代码创建子菜单可以使用以下步骤:

  1. 首先,在res/menu文件夹下创建一个新的菜单资源文件,例如sub_menu.xml。<menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/sub_menu_item_1" android:title="子菜单项1" /> <item android:id="@+id/sub_menu_item_2" android:title="子菜单项2" /> </menu><menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/menu_item_with_submenu" android:title="主菜单项" app:actionLayout="@layout/sub_menu" /> </menu>MenuItem menuItemWithSubmenu = menu.findItem(R.id.menu_item_with_submenu); View actionView = menuItemWithSubmenu.getActionView(); PopupMenu popupMenu = new PopupMenu(this, actionView); popupMenu.inflate(R.menu.sub_menu); popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { switch (item.getItemId()) { case R.id.sub_menu_item_1: // 处理子菜单项1的点击事件 break; case R.id.sub_menu_item_2: // 处理子菜单项2的点击事件 break; } return true; } }); menuItemWithSubmenu.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_UP) { popupMenu.show(); } return true; } });这样,在主菜单项上点击时,就会显示子菜单。用户可以从子菜单中选择一个选项,并触发相应的事件。
  2. sub_menu.xml文件中,定义子菜单项。例如:
  3. 在主菜单中定义一个菜单项,并设置其android:actionLayout属性为子菜单的布局。例如:
  4. 在主菜单项的点击事件中,使用PopupMenu类来显示子菜单。例如:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券