如何在Xamarin.Android中使用mipmap文件夹?

时间:2016-08-23 15:54:51

标签: android xamarin.android

对于应用图标,我们应该使用mipmap文件夹。现在我将以下文件夹添加到Resources文件夹:

  • Mip映射HDPI
  • Mip映射LDPI
  • Mip映射MDPI
  • Mip映射xhdpi
  • Mip映射xxhdpi
  • Mip映射xxxhdpi

在每个文件夹中,应用图标都有ic_launcher.png,构建操作为AndroidResource

现在我无法在Application Icon中设置Android Manifest。它没有出现在那里。我缺少什么?

我删除了drawable文件夹中的默认图标,并删除了Android Manifest中的条目。在构建我得到了

  

找不到与给定名称匹配的资源(在'icon'处,值为'@ drawable / icon')   文件:... \ SomeApp.Droid \ obj \ Debug \ android \ manifest \ AndroidManifest.xml

MainActivity中有一个条目,它是Icon = @drawable/icon的旧引用。现在我改为Icon = @mipmap/ic_launcher,错误消失了。

3 个答案:

答案 0 :(得分:5)

我手动编辑了AndroidManifest.xml以使用mipmap文件夹:

<application android:label="@string/app_name" android:icon="@mipmap/ic_launcher"></application>

答案 1 :(得分:0)

试过这些:

  1. 我删除了对默认图标的所有引用。
  2. 删除了Drawable文件夹中的图标。
  3. 在Manifest中添加了对我的mipmap(在参考资料中)的新引用。 仍然没有找到资源匹配。
  4. <强>此外:

    我必须做的是手动添加文件夹和图标(即right-click > add > new folder)。我不能拖放它,而这样做不允许你在文件夹中看到图标文件。

    似乎构建操作应自动设置为新添加的资源(ref)。我不确定为什么拖放到解决方案资源管理器会隐藏&#34;文件夹中的文件。

答案 2 :(得分:0)

  

未找到与给定名称匹配的资源(在“ icon”处具有值)   '@ mipmap / CircleIcon')

在我的情况下,我的图标名为“ CircleIcon.png ”。

我通过以下操作解决了此问题:

  1. 将图标 CircleIcon.png 的名称更改为 icon.png
  2. 在项目中再次引用它。
  3. MainActivity更改为此:

    [Activity(
         Label = "Appname",
         Icon = "@mipmap/icon",
         Theme = "@style/MainTheme" /*"@android:style/Theme.Material.Light" */,
         Exported = true,
         LaunchMode = LaunchMode.SingleTask,
         MainLauncher = true,
         ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation,
         HardwareAccelerated = true,
         ScreenOrientation = ScreenOrientation.Portrait)]
    
  4. 清理解决方案空间并重建。