出现了“'Resource.Attribute'不包含名为'actionBarSize'的定义”的错误。

16
尝试调试一个空应用程序时收到“‘Resource.Attribute’不包含‘actionBarSize’的定义”错误。我已经重新安装了Android SDK。

尝试调试空应用时,出现“'Resource.Attribute'不包含'actionBarSize'的定义”错误。已重新安装Android SDK。

    public static void UpdateIdValues()
    {
        global::Xamarin.Forms.Platform.Android.Resource.Attribute.actionBarSize = global::L1NQ.Droid.Resource.Attribute.actionBarSize;
    }
    public partial class Attribute
    {

        static Attribute()
        {
            global::Android.Runtime.ResourceIdManager.UpdateIdValues();
        }

        private Attribute()
        {
        }
    }
6个回答

20

以下操作有助于解决问题:

  1. 删除项目文件夹中的 Bin 和 Obj 文件夹
  2. 删除 C:\Users{您的用户名}\AppData\Local\Xamarin\zips 中的内容
  3. 重新构建项目

这对我也起作用了。谢谢!重新下载/创建zip花了一些时间,但最终一切都正常工作了,终于。 - BernardG
需要从便携式项目或Portable项目中的.droid项目中删除BIn和OBj文件夹吗? - Ashish-BeJovial
这对我没有用,我发现在\AppData下没有名为“zips”的子文件夹。 - LionelGoulet
1
然后,第二次尝试时,它确实起作用了。 - LionelGoulet

2
我在使用VS2015 Update 3 RC新建一个.forms项目后遇到了同样的问题(以及其他问题)。我的JDK7版本是:
Java SE Development Kit Update 55

之后,我下载并安装了
Java SE Development Kit Update 79

从这个链接:Download JDK 7 - Update 79

然后重启电脑,这个问题(以及其他问题)都解决了。请注意保留HTML标签。

它支持JDK 8 Update 40吗?因为我有8 Update 40,但仍然出现相同的错误。 - Nirav Madariya
在我的情况下,我能够用我上面写的确切版本解决问题,但我不知道是否适用于您的情况。 - FredyWenger
@NiravMadariya “即使您使用64位Windows,安装32位版本的Java JDK也是必要的。同样重要的是安装Java JDK的v1.7版本(尽管同时安装1.8或更高版本也可以)。“ https://developer.xamarin.com/guides/android/getting_started/installation/windows/manual_installation/#Installing_Java_SDK_(JDK) - lucas.mdo

2

这个错误可能有另外两个原因:

  1. 如果你的安卓项目中有任何一个图片文件名包含“-”(短横线)。
  2. 如果你正在使用xlab,最新稳定版本不兼容最新的XF版本。你可以在这里找到更多细节和解决方案。建议使用XLabs.Forms 2.2.0-pre05。

2
对于现在查看此页面的任何人:这个答案在问题被提出时不适用,但解决了我的问题。Xlabs和Xamarin.Forms的最新稳定版本不兼容(截至2016年11月1日)。一旦我通过NuGet包管理器更新到XLabs.Forms 2.2.0-pre05(有一个复选框显示可用的预发布版本),我的问题就迎刃而解了。我困扰了好几天,所以这对我来说似乎是一个巨大的错误。我不知道为什么这是我第一次听说它。我很震惊Xlabs还没有更新稳定版。这需要更多的赞!非常感谢@batmaci! - jnel899

0

删除 C:\Users\{你的用户名}\AppData\Local\Xamarin 下的所有文件,然后重新构建你的项目。


0

这对我有用:

  • 删除所有Xamarin Google Play Services nuget包。
  • 重新安装我需要的那些包。

当我再次尝试安装包时,nuguet要求我将编译API更改为24级。


0

在编程中,务必仔细检查所有的axml文件。例如,在我的axml文件中,我写了这一行代码:android:src="@drawable/ic_action_content_new",但是在我的drawable文件夹中并没有名为"ic_action_content_new"的文件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接