Android编程问题解决之Error should use android showAsAction

来源:互联网 发布:声音好听的网络男歌手 编辑:程序博客网 时间:2024/06/03 18:53

Android编程问题解决之Error should use android showAsAction when not using support library

在编写关于menus.xml文件时,可能会遇到错误提示Error should use android showAsAction when not using support library,这个问题是怎么出现呢?

从Android1.0到Android6.0增加了很多功能,为了让低版本的android系统可以使用最新的添加的功能,Android操作系统的编写者在最新的操作系统中会提供一个包(例如com.android.support:appcompat-v7:23.3.0就是Android6.0的低版本支持包),这个包用于让低版本的adnroid系统可以使用最新的功能。

如果在使用了包的android项目中使用了低版本支持包,在定义menu资源时应该使用如下形式

<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:yourapp="http://schemas.android.com/apk/res-auto" > <item android:id="@+id/action_search"  android:icon="@drawable/ic_action_search" android:title="@string/action_search"yourapp:showAsAction="ifRoom"  />     </menu>

其中yourapp:showAsAction=”ifRoom”就是低版本支持包中提供的内容。

如果在项目中没有使用低版本支持包,在定义menu资源时应该使用如下形式

<menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/action_search"  android:icon="@drawable/ic_action_search" android:title="@string/action_search"android:showAsAction="ifRoom"  />     </menu>

如果在编程中出现Error should use android showAsAction when not using support library错误只要按照下面的方法修改即可
1. 如果需要低版本支持包使用yourapp:showAsAction=”ifRoom” 方式
2. 如果不需要低版本支持包将低版本依赖去掉即可

dependencies {    compile fileTree(dir: 'libs', include: ['*.jar'])    testCompile 'junit:junit:4.12'    //compile 'com.android.support:appcompat-v7:23.3.0'}

版权声明:原创作品版权归作者所有,转载请注明出处,未经允许禁止私自印刷及出版。一经发现作者将依法追究其法律责任。

与我联:QQ群539225664


1 0
原创粉丝点击