android - MonoDroid 应用程序不使用正确的密度绘图

标签 android xamarin.android resolution dpi

在具有不同屏幕尺寸和密度的不同设备上测试使用 MonoDroid 开发的应用程序时,我得到了一些非常有趣的结果。

我在我的项目中设置了以下(简化的)文件夹结构:

  • 可绘制
    • 图片.png
  • drawable-ldpi
    • 图片.png
  • drawable-mdpi
    • 图片.png
  • drawable-hdpi
    • 图片.png
  • drawable-xhdpi
    • 图片.png

drawable 中的图像是文件夹的图像。其他文件夹中的图像除了大小和顶部绘制的字母以指示其密度(例如 L、M、H 或 X)外,其他文件夹均相同,具体取决于文件夹。

无论设备的屏幕密度如何(使用 Android.Util.DisplayMetrics 验证),为应用程序显示的图像都是从 drawable-mdpi 文件夹中提取的。

我在 Eclipse 中创建了一个快速测试应用程序,它使用相同的 xml 布局文件和相同的图像集。在我的各种设备上启动该应用会显示正确的图像。

我完全不知所措,这让我花费了 2 天的大部分时间来诊断并最终查明问题的原因。

有没有人能够克服这个问题?提前致谢!

最佳答案

在与 Xamarin 支持聊天后,发现问题与不正确的 AndroidManifest.xml 文件有关...

它没有正确设置 标签...

改变它

 <uses-sdk /> <!-- Why in the world this is the default I'll never know! -->

对此

 <uses-sdk android:minSdkVersion="8" targetSdkVersion="8"/>

彻底解决了问题。

希望其他人觉得这很有用!

关于android - MonoDroid 应用程序不使用正确的密度绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8596917/

相关文章:

c# - Xamarin 形成 android json - 异步调用挂起/永不返回

android - 单体机器人 : Global Error Handler

xamarin - Visual Studio App Center Android 构建项目找不到解决方案文件

testing - 在 iPhone 5 上以 3.5"分辨率显示应用程序以进行开发/调试

android - 如何找到联系人图像支持的最大图像尺寸?

Android:Toast 类型中的方法 makeText(Context, CharSequence, int) 不适用于参数 (MyBroadCastReceiver, String, int)

android - MediaScanner、onScanCompleted 未被调用

javascript - 我可以在 'window' 以外的上下文中加载 javascript 文件吗?

Android Studio 看不到设备

android - 设备和模拟器的布局不匹配(phonegap + jquery mobile)