1

在寻找一种在 ActionBar 中显示选项并且仍然与 Honey 兼容的方法时,我遇到了兼容性库(http://developer.android.com/reference/android/support/v4 )中的 MenuCompat.setShowAsAction() 方法/view/MenuCompat.html),但它已被弃用,我在库中找不到替代品来做同样的事情。有任何想法吗?

提前致谢

4

2 回答 2

5

MenuItemCompat.setShowAsAction(MenuItem, int)已在API 级别 26.0.0 beta1中弃用。现在可以setShowAsAction (int actionEnum)直接使用了。actionEnum定义项目应如何显示。您可以选择SHOW_AS_ACTION_ALWAYSSHOW_AS_ACTION_IF_ROOM或之一SHOW_AS_ACTION_NEVERSHOW_AS_ACTION_NEVER是默认值。在这个例子中,我们将使用:

public boolean onCreateOptionsMenu(Menu menu)
{
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.menu_main, menu);

    // MenuItemCompat.setShowAsAction(menu.findItem(R.id.menu_quit), 1)
    menu.findItem(R.id.menu_quit).setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
    return true;
}
于 2017-08-07T07:35:51.250 回答
4

如果您在上面链接到的页面上阅读JavaDocssetShowAsAction()MenuCompat,您会找到答案:

使用MenuItemCompat.setShowAsAction(MenuItem, int)

于 2013-03-18T14:42:55.657 回答