“No resource identifier found for attribute 's

2020-01-26 07:16发布

问题:

I am attempting to update my android application to look better for tablets running Honeycomb. As such, I am targeting version 11 of the SDK (my minSdkVersion = 4). This adds the Honeycomb theme to my app, making it look better. However, I have no way to access my menu options. So, I am attempting to add my menu items as an action bar item with the following in the file in my /res/menu/ folder:

android:showAsAction="ifRoom|withText"

However, I get the following error:

No resource identifier found for attribute 'showAsAction' in package 'android'

I tried altering my minSdkVersion number to 11 to see if it would work, but no luck. Any ideas? Thanks!

回答1:

If you are building with Eclipse, make sure your project's build target is set to Honeycomb too.



回答2:

remove android:showAsAction="never" from res/menu folder from every xml file.



回答3:

all above fix may not work in android studio .if you are using ANDROID STUDIO...... use this fix

add

xmlns:compat="http://schemas.android.com/tools"

in menu tag instead of

xmlns:compat="http://schemas.android.com/apk/res-auto"

in menu tag.



回答4:

Add "android-support-v7-appcompat.jar" to Android Private Libraries



回答5:

Add compat library compilation to the build.gradle file:

compile 'com.android.support:appcompat-v7:19.+'


回答6:

The problem is related to AppCompat library. With it, you have

xmlns:appname="http://schemas.android.com/apk/res-auto"

and possibly:

appname:showAsAction="never"

in menu.xml file.

Without the lib, you can only have:

android:showAsAction="never"

and my app works with menu both on Android 4.3 and 2.3.3.



回答7:

Check your compileSdkVersion on app build.gradle. Set it to 21:

compileSdkVersion 21


回答8:

go to gradle and then to app.buildgradle then set compileSDKVersion to 21 and then if necessary the android studio will download some files