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

AndroidAndroid LayoutAndroid ActionbarAndroid Menu

Android Problem Overview


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!

Android Solutions


Solution 1 - Android

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

Solution 2 - Android

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

Solution 3 - Android

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.

Solution 4 - Android

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

Solution 5 - Android

Add compat library compilation to the build.gradle file:

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

Solution 6 - Android

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.

Solution 7 - Android

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

compileSdkVersion 21

Solution 8 - Android

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

Solution 9 - Android

From answer that was removed due to being written in Spanish:

All of the above fixes may not work in android studio. If you are using ANDROID STUDIO please use the following fix.

Use

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

on the menu label instead of

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

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionarietsView Question on Stackoverflow
Solution 1 - AndroidJason HanleyView Answer on Stackoverflow
Solution 2 - AndroidSaurabhView Answer on Stackoverflow
Solution 3 - Androidkumar kundanView Answer on Stackoverflow
Solution 4 - Androiduser3192555View Answer on Stackoverflow
Solution 5 - AndroidelevenView Answer on Stackoverflow
Solution 6 - AndroidYarView Answer on Stackoverflow
Solution 7 - AndroidRenato ProbstView Answer on Stackoverflow
Solution 8 - AndroidsagarView Answer on Stackoverflow
Solution 9 - AndroidSoulesteView Answer on Stackoverflow