我有一个Android应用,它使用自己资源文件夹中的drawable和来自共享用户ID 链接的包的resources文件夹。
每次应用程序运行时,我都面临着减少的drawables'像素密度(导致插值假象)只有自己的资源**,而那些链接的***看似正常。
第10次执行应用程序,它崩溃了*。 然后第一次加载显示原始密度的所有图像。
该应用程序基于SDK 1.6版,没有特定的密度依赖资源,这意味着严格设计为320 x 480px。 该问题确实既不出现在具有如上所示匹配的显示尺寸的设备上,也不出现在具有匹配和更大显示尺寸的仿真器中。在最后一种情况下,图像被正确缩放以适合。
我不知道(在代码中)在哪里开始寻找该bug的原因。
提前感谢任何提示!
编辑:
我还应该提到,在重新加载应用程序时,几个对话框(例如ProgressDialog
)的大小是以前的一半。
ERROR/AndroidRuntime(23632): FATAL EXCEPTION: main
ERROR/AndroidRuntime(23632): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.myapp/com.myapp.Paketliste}: android.view.InflateException: Binary XML file line #20: Error inflating class <unknown>
ERROR/AndroidRuntime(23632): Caused by: android.view.InflateException: Binary XML file line #20: Error inflating class <unknown>
ERROR/AndroidRuntime(23632): Caused by: java.lang.reflect.InvocationTargetException
ERROR/AndroidRuntime(23632): Caused by: android.content.res.Resources$NotFoundException: File res/drawable/buttons.png from drawable resource ID #0x7f020016
ERROR/AndroidRuntime(23632): Caused by: java.lang.IllegalArgumentException: width and height must be > 0
WARN/ActivityManager(2461): Force finishing activity com.myapp/.Paketliste
ImageView imageView_IconOfAnotherPackage = (ImageView) row
.findViewById(R.id.paketliste_installed);
imageView_IconOfAnotherPackage
.setImageResource(R.drawable.default_icon);
imageView_IconOfAnotherPackage
.setImageDrawable(this
.getPackageManager()
.getResourcesForApplication('com.myotherapp')
.getDrawable(0x7f020001)
);
答案 0 :(得分:1)
我找到了一个帖子,其中一个人可能会遇到同样的问题(并找到解决方案):
http://adrianvintu.com/blogengine/post/Force-Locale-on-Android.aspx
(通过这个回答:Set-up the application Language in Android Preferences)