【发布时间】:2013-02-28 14:42:48
【问题描述】:
是否可以按照hereandroid:showAsAction="ifRoom|withText" 的建议以编程方式设置标志?
【问题讨论】:
标签: android android-actionbar actionbarsherlock
是否可以按照hereandroid:showAsAction="ifRoom|withText" 的建议以编程方式设置标志?
【问题讨论】:
标签: android android-actionbar actionbarsherlock
对于每个MenuItem,执行以下操作:
myMenuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
【讨论】:
myMenuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT); 但没有成功,它只允许输入一种值类型,还有其他方法吗?
如果您想在运行时设置这些属性,那么您需要在 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);
}
【讨论】:
你试过了吗:
getSupportActionBar().setDisplayOptions(MenuItem.SHOW_AS_ACTION_IF_ROOM);
getSupportActionBar().setDisplayOptions(MenuItem.SHOW_AS_ACTION_WITH_TEXT);
【讨论】:
(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT),flag-style。
setDisplayOptions()需要ActionBar DISPLAY_常量虽然,一些常量do overlap。