showAsAction="always"报错

来源:互联网 发布:js删除数组指定div 编辑:程序博客网 时间:2024/05/14 23:28

当你使用[app_name] showAsAction="always"报错:

Should use android:showAsAction when not using the appcompat library

但是你已经引入appcompat-v7包布局文件     [app_name]xmlns:e="http://schemas.android.com/apk/res-auto">

android:id="@+id/menu_actionbar_home"

android:icon="@drawable/android_search_button_icon"

app_name:showAsAction="always"

依然报错 xml文件报错 编译不成功 

提示:

Should use android:showAsAction when not using the appcompat library

楼主觉得应该是编译版本的问题,但是改了版本之后依然不好用,楼主才疏学浅,谁如果知道根本原因,望不吝赐教,万分感谢

楼主前天也是遇见这种问题,百思不得其解,然后再网上各种搜索方法,然后在外国一个网站上找到答案

这里楼主吐槽一下:中国的技术论坛好多都是拷贝粘贴,然后各种雷同,能解决的问题真的不多;话不多说直接上解决方法


解决方法:

app_name:title="二维码"app_name:showAsAction="always"报错 直接编译不了

所以就改成android::showAsAction="always"

然后你在重写

@Overridepublic void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {super.onCreateOptionsMenu(menu, inflater);inflater.inflate(R.menu.actionbar_psersonal_menu, menu);for (int j = 0; j < menu.size(); j++) {        MenuItem item = menu.getItem(j);        item.setShowAsActionFlags(MenuItem.SHOW_AS_ACTION_ALWAYS);    }}
这就是app_name:showAsAction="always的作用,因为楼主用的是两个所以就循环,这代码可以自己修改,就是在java代码实现

app_name:showAsAction="always这个效果;

如果你的android:minSdkVersion<14

问题就来了 编译的时候又来了Call requires API level 14 (current min is 11): android.view.MenuItem#setShowAsActionFlags

这就是然后你引入@SuppressLint("NewApi")就好了

如果大于等于14则没影响



1 0
原创粉丝点击