12

正如标题所示,我在至少 3 个 XML 布局文件中遇到了该错误,但是,我在任何这些 XML 文件中都没有看到 attritube“showsAsAction”,是我遗漏了什么还是我只是瞎了眼?,在这里是有问题的 XML 文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <Button
        android:id="@+id/findSelected"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Registrar Asistencia" 
        android:onClick="registrarAsistencia"/>

     <ListView 
         android:id="@+id/listaAlumnos" 
         android:layout_width="fill_parent"
         android:layout_height="fill_parent" />

</LinearLayout>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center|top"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/lblCuenta"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Cuenta"
        android:textAppearance="?android:attr/textAppearanceLarge" />


    <EditText
        android:id="@+id/txtCuenta"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ems="10" /> 

    <TextView
        android:id="@+id/lblPass"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Contraseña"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <EditText
        android:id="@+id/txtPass"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="textPassword" />

    <Button
        android:id="@+id/btnIniciarSesion"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="iniciarSesion"
        android:text="Iniciar Sesion" />

</LinearLayout>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >


    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text="Large Text"
        android:textAppearance="?android:attr/textAppearanceLarge" />

</RelativeLayout>

另外,我使用 Android 2.2 (API 8) 作为目标版本。我知道“showAsAction”是在 API 11 中实现的,但我在这里找不到问题。

更新:问题面板显示以下错误:

生成最终存档时出错:java.io.FileNotFoundException: C:\Users\\Documents\Android\Registro de Asistencia\bin\resources.ap_ 不存在

4

7 回答 7

12

当我忘记将appcompat-v7:+添加到我的项目依赖项时,我遇到了这个问题。你可以在 build.gradle 中这样做:

dependencies {
  compile 'com.android.support:appcompat-v7:+'
}

这是因为我的 menu.xml 中有以下内容:

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

app:showAsAction="never"

当我删除xmlns:app命名空间并只使用android:showAsAction="never"时,我不再需要 appcompat-v7 库。

于 2014-01-03T18:10:35.043 回答
8

您确定您正在查看正确的 *.xml 文件吗?您似乎在布局 xml 中寻找“showAsAction”,但它是菜单的参数。而是查看 .../menu/your_activity.xml

您正在处理的问题与使用小于 4.0 的目标和/或小于 14 的 API 有关。

所以,

a) 更改这些参数,

b) 将 showAsAction 的值从“never”更改为“ifRoom”。

于 2012-12-15T17:50:12.240 回答
3

如果您在 XML 中使用了资源标识符“ShowAsAction”,就会发生这种情况。我猜这个功能只能从ver11开始。如果您尝试在较低的 API 版本上运行相同的程序,则会产生此错误。解决方案->右键单击项目>属性> Android>构建目标>选择大于API 11的东西

于 2012-12-22T09:03:12.590 回答
2

您必须选择 4.0 或更高版本的 API 14,因为任何低于 4.0 的版本在其包中都不包含showAsAction属性

于 2013-09-20T16:50:47.217 回答
1

正确的答案是使用

android:showAsAction="ifRoom"

而不是android在哪里

xmlns:android="http://schemas.android.com/apk/res/android"
于 2013-09-16T19:07:23.080 回答
1

安卓工作室

如果您使用的是ANDROID STUDIO ......请使用此修复程序

添加

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

在菜单标签中,而不是

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

菜单标签中。

于 2015-06-09T05:42:56.380 回答
-1

如果您将项目从 Android Studio 导入到 Eclipse,只需添加:

<?xml version="1.0" encoding="utf-8"?>

在 xml 的头部,然后它会全部修复。

于 2016-01-07T11:15:02.497 回答