[英]Android Resource not found exception
所以我不是编程,Java或Android开发中的新手,但我遇到了一个奇怪的问题:我已经制作了一个应用程序,非常先进,并且已经在市场上销售。
目前我有超过1000个安装,我有大约4或5个针对ResourceNotFoundException的崩溃报告。 最奇怪的是它崩溃的线是打开的
setContentView(R.layout.some_custom_layout)
在代码中我总是指资源
someTxtView.setText(R.string.some_string)
所以我想知道我是否使用过
mContext.getResources().getDrawable(mContext.getResources().getIdentifier("some_string", "string", "my.example.package"));
崩溃会消失吗?
我遇到了同样的问题,我通过创建名为“layout-small”的布局文件夹来修复它。
根据分辨率我只创建了2个文件夹“layout-large”和“layout-medium”。 但很少有手机具有较低的分辨率,因此根据分辨率找不到合适的资源。 Android OS根据分辨率呈现xml资源。 它去找所需文件夹中的资源。
95%以上的Android手机,其分辨率与“layout-normal”文件夹相匹配。 但仍有手机具有较低的分辨率。 因此出现了这个问题。
有关详细信息,请访问: http : //developer.android.com/guide/practices/screens_support.html
希望这有助于你的问题。
someTxtView.setText(R.string.some_string)
在那里你设置整数值到文本。 它不正确因为它搜索这个值的resousre。 你必须写
someTextView.setText(getResources().getText(R.string.blabla));
如果你从Activity的onCreate
方法调用setContentView(R.layout.some_custom_layout)
,只要你的应用程序编译(我认为它确实如此)你应该是好的。
AFAIK访问您的字符串资源:
someTxtView.setText(R.string.some_string)
不是要走的路。 你应该这样做:
getContext().getResources().getString(R.string.some_string)
除了
setContentView(R.layout.some_custom_layout);
尝试使用
setContentView(yourpackagename.R.layout.some_custom_layout);
这帮助了我很多次。
我有一个建议。 你是否在你的布局中使用android secific资源,例如drawables或者其他东西
机器人:研究背景= “@机器人:可绘制/ some_android_drawable”
也许某些供应商不提供其固件的一些资源,因此您的应用程序崩溃。 例如这个问题
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.