Android 无法将按钮动态添加到ActionBar
我试图添加ActionBar按钮,但不必为每个活动创建单独的.xml文件。代码如下:Android 无法将按钮动态添加到ActionBar,android,android-actionbar,android-actionbar-compat,Android,Android Actionbar,Android Actionbar Compat,我试图添加ActionBar按钮,但不必为每个活动创建单独的.xml文件。代码如下: @Override public boolean onCreateOptionsMenu(Menu menu) { menu.add(0, 0, 0, R.string.ic_refresh_str).setIcon(R.drawable.ic_action_refresh); return true; } 按钮没有出现。如果我将代码修改为以下代码,它将起作用
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, 0, 0, R.string.ic_refresh_str).setIcon(R.drawable.ic_action_refresh);
return true;
}
按钮没有出现。如果我将代码修改为以下代码,它将起作用:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, 0, 0, R.string.ic_refresh_munawwat).setIcon(R.drawable.ic_action_refresh)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
return true;
}
但问题是android:minSdkVersion是7,下面是我在setShowAsAction上得到的错误消息:
调用需要API级别11(当前最小值为7):
android.view.MenuItem#setShowAsAction
@SuppressWarnings("deprecation")
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuItem item = menu.add(0, 0, 0, R.string.ic_refresh_txt).setIcon(R.drawable.ic_action_refresh);
MenuCompat.setShowAsAction(item, 2);
return true;
}
如何动态添加按钮并保持对minSdk 7的支持?您可以尝试android-support-v4库或解决方案是使用不推荐使用的函数MenuCompat.setShowAsAction
@SuppressWarnings("deprecation")
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuItem item = menu.add(0, 0, 0, R.string.ic_refresh_txt).setIcon(R.drawable.ic_action_refresh);
MenuCompat.setShowAsAction(item, 2);
return true;
}
我忘了提到我正在使用AppCompat