Articles of 菜单

Android MenuItemCompat.getActionView已弃用

我正在实现这样的SearchView: MenuItem search = menu.findItem(R.id.search); SearchView searchView = (SearchView) MenuItemCompat.getActionView(search); 但这给了我一份检查报告 ‘getActionView(android.view.MenuItem)’已弃用 现在在文档中,提到: 此方法在API级别26.0.0中已弃用 直接使用getActionView()。 所以我尝试了这个: MenuItem search = menu.findItem(R.id.search); SearchView searchView = (SearchView) getActionView(search); 但它仍然给我一个弃用的消息。 那么最佳做法是什么?

MenuItem的选中状态未通过其图标正确显示

我有这样定义的MenuItem: 和btn_star.xml定义: 但是,当我使用此选项创建选项菜单时,即使MenuItem的isChecked()属性为true,图标也不会以其选中状态显示。 我正在使用ActionBarSherlock控件,但是,如果我只是创建一个普通的选项菜单并调用setChecked(true) ,我会得到相同的结果。 无论项目的检查状态如何,它仍然显示btn_star_off drawable。 正确调用onOptionsItemSelected()方法,我可以成功更改checked属性: @Override public boolean onOptionsItemSelected(MenuItem item) { if(item.isCheckable()) { item.setChecked(!item.isChecked()); } return super.onOptionsItemSelected(item); } 在此处设置断点显示isChecked属性正在更改,但图标本身未更新以反映正确的状态。 这里有什么我想念的吗? 我做错了吗? 我无法弄清楚为什么这不能正常工作。

工具栏选项菜单背景颜色

我正在使用Android工具栏。 我只想更改溢出菜单的背景颜色。 但它并没有改变。 风格xml @style/PopupMenuStyle @style/ThemeOverlay.AppCompat.Dark.ActionBar @android:color/white 工具栏XML

将一个项目对齐ActionBar左侧

我想将一个项目对齐ActionBar的左侧,将其他项目对齐到右侧,如下所示: 我的菜单xml中有5个项目。 main.xml中 我们该怎么做? 抱歉我的英语非常差劲。

Android操作栏可检查菜单项无法正常工作/显示?

所以我试图获取我的菜单项,即在操作栏上显示的行为就像一个可检查的菜单选项。 第一部分工作,意味着它是可检查的,当我按下它,并在代码中设置setChecked(true)它的工作原理。 但是什么不起作用的是视觉部分。 在已检查和未选中状态下,菜单项在操作栏上的显示方式没有变化? 我尝试使用invalidateOptionsMenu(),但这不能完成这项工作,不仅如此,我的代码中的那行我无法退出检查状态?!? 会发生的事情是无效的OptionsMenu()接缝以取消设置已检查状态并最终“循环”,或者在每次按下该菜单项时,我会继续检查代码中未经检查的部分,并且无效检查它将被取消选中我猜… 以下是我的XML文件中的代码: 这是java代码: @Override public boolean onOptionsItemSelected(MenuItem item) { // TODO Auto-generated method stub switch (item.getItemId()) { case R.id.lenslist_menu_add: return true; case R.id.lenslist_menu_delete: if (item.isChecked() == true) { item.setChecked(false); deleteMode = false; lensAdapter.setDeleteMode(false); } else { item.setChecked(true); deleteMode = true; lensAdapter.setDeleteMode(true); } lensAdapter.notifyDataSetChanged(); return true; } return super.onOptionsItemSelected(item); } 谢谢!

滑动抽屉出现在所有活动中

我正在开发一个包含许多活动的应用程序,我创建了自己的菜单(我不想使用内置的菜单按钮)和滑动抽屉,因为滑动抽屉位于屏幕的底部并包含我的菜单按钮 我需要的是让滑动抽屉出现在我的所有活动中 我试图创建一个活动,并将其内容视图设置为包含抽屉的xml文件,然后在所有其他活动中扩展该活动,但此解决方案不起作用 有什么建议吗?

色调菜单图标

我正在构建一个Android应用程序,我使用Action Bar Icon Pack中的图标在操作栏中使用。 我通过menu文件夹中的xml文件定义它们。 有没有办法“着色”这些图标,使它们都是相同的颜色? 到目前为止,我必须使用图像编辑软件手动完成,但如果我决定改变颜色,我必须重新做一遍。 我知道ImageView有一个android:tint属性,但我还没有find一种方法将它用于菜单的图标。 谢谢

不使用Menu按钮启动ICS模拟器

我试图在ICS上的ActionBar中看到溢出菜单,但我没有设备。 我正在使用模拟器并想知道,如何在没有菜单按钮的情况下启动模拟器? 我想模拟没有菜单硬件按钮的设备。 我看过: http : //developer.android.com/guide/developing/tools/emulator.html但是我看不到怎么做。 谢谢你的帮助。

如何更改背景颜色popup菜单android

我从查询数据库生成菜单的每个选项。 这是我的代码。 final PopupMenu popupMenu = new PopupMenu(getBaseContext(), v); SQLiteDatabase db = AdapterDb.getReadableDatabase(); Cursor cursor = db.rawQuery(sql, null); int ctritem = 0; if (cursor.moveToFirst()) { popupMenu.getMenu().add(Menu.NONE, ctritem, Menu.NONE, “ALL ITEMS”); do { ctritem++; popupMenu.getMenu().add(Menu.NONE, ctritem, Menu.NONE, cursor.getString(0)); } while (cursor.moveToNext()); } 一切都还可以,但问题是如何更改选项菜单的颜色或popup菜单的背景颜色(从黑色到白色),是否可能? 谢谢

在硬件菜单按钮上的操作栏中打开子菜单单击

标题解释了一切。 我想在单击“硬件”菜单按钮时在操作栏中打开子菜单 这是代码,它第一次点击菜单时工作正常。 每隔一次它就会闪烁(打开并立即关闭) private Menu mainMenu; public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.options, menu); mainMenu = menu; return true; } public boolean onKeyDown(int keyCode, KeyEvent event) { if(event.getAction() == KeyEvent.ACTION_DOWN){ switch(keyCode) { case KeyEvent.KEYCODE_MENU: mainMenu.performIdentifierAction(R.id.more, 0); return true; } } return super.onKeyDown(keyCode, event); } 这是options.xml 更新:(解决方案)刚刚将onKeyDown()方法更改为onKeyUp(),现在它已经坚持了