22

是否可以按照此处 的建议以编程方式设置标志android:showAsAction="ifRoom|withText"

4

3 回答 3

49

对于每个MenuItem,请执行以下操作:

myMenuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
于 2013-02-28T14:57:00.053 回答
13

如果您想在运行时设置这些属性,那么您需要在 而MenuItem不是ActionBar.

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main_menu, menu);
    MenuItem item = menu.findItem(R.id.your_menu_item);
    item.setShowAsActionFlags(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
}
于 2013-02-28T14:58:07.640 回答
-1

你有没有试过这个:

getSupportActionBar().setDisplayOptions(MenuItem.SHOW_AS_ACTION_IF_ROOM);
getSupportActionBar().setDisplayOptions(MenuItem.SHOW_AS_ACTION_WITH_TEXT);
于 2013-02-28T14:47:11.200 回答