【问题标题】:error:no resource identifier found for attribute"showAsAction" in package android错误:在包 android 中找不到属性“showAsAction”的资源标识符
【发布时间】:2013-03-29 12:48:17
【问题描述】:

我一直在做一个 Android 项目,遇到了一个我很长一段时间都无法解决的错误。这是错误提示

error:no resource identifier found for attribute"showAsAction" 

在包中android

错误在以下文件login_.xml

<item
    android:id="@+id/action_settings"
    android:orderInCategory="100"
    android:showAsAction="never"
    android:title="@string/action_settings"/>

【问题讨论】:

  • 因为android:showAsAction 不存在。出于好奇,您以前在哪里看到过引用的内容?
  • @TronicZomB android:showAsAction 用于在创建操作栏项目时向系统提示是否应在栏上显示项目、以文本显示、仅在有可用空间时显示或显示在溢出下拉菜单中。
  • @user2146931 你的构建目标是什么?
  • 哦!好的,这是有道理的,为什么我不熟悉它,因为我还没有使用操作栏。感谢@MCeley 的澄清!

标签: java android android-xml android-menu


【解决方案1】:

此属性是在 API 级别 11 中引入的。在 Manifest 文件中检查您的应用的最低版本和目标版本。

【讨论】:

    【解决方案2】:

    “ShowAsAction”属性在 api 11 中引入。在 Manifest 文件中更改应用的 minSdkVersion。

    如果要使用低于11的api,则必须使用android支持库“android.support.v4.app”。

    导入支持库后,您必须在 login.xml 文件中进行一些更改。例如,将“android:showAsAtion attribute”替换为“yourapp:showAsAction”并以这种方式在标题中定义“yourapp”。

    <menu xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:yourapp="http://schemas.android.com/apk/res-auto" >
    <item
        android:id="@+id/action_settings"
        android:orderInCategory="100"
        yourapp:showAsAction="never"
        android:title="@string/action_settings"/>
    </menu>
    

    【讨论】:

    • 我的最低sdk版本是14,但仍然面临同样的问题
    【解决方案3】:

    只需从 xml 文件中删除 android:showAsAction

    【讨论】:

      猜你喜欢
      • 2011-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多