如何修复android上的资源问题?

时间:2011-03-28 16:25:08

标签: android resources imageview

在LogCat中获取以下内容:

03-28 16:18:57.795: WARN/ResourceType(8351): No package identifier when getting name for resource number 0x00000001
03-28 16:18:57.865: WARN/ImageView(8351): Unable to find resource: 1
03-28 16:18:57.865: WARN/ImageView(8351): android.content.res.Resources$NotFoundException: Resource ID #0x1
03-28 16:18:57.865: WARN/ImageView(8351):     at android.content.res.Resources.getValue(Resources.java:891)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.content.res.Resources.getDrawable(Resources.java:579)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.ImageView.resolveUri(ImageView.java:485)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.ImageView.setImageResource(ImageView.java:270)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.SimpleCursorAdapter.setViewImage(SimpleCursorAdapter.java:217)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.SimpleCursorAdapter.bindView(SimpleCursorAdapter.java:165)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.CursorAdapter.getView(CursorAdapter.java:186)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.AbsListView.obtainView(AbsListView.java:1274)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.ListView.measureHeightOfChildren(ListView.java:1147)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.ListView.onMeasure(ListView.java:1060)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.view.View.measure(View.java:7964)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3023)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:888)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.LinearLayout.measureHorizontal(LinearLayout.java:619)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.LinearLayout.onMeasure(LinearLayout.java:280)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.view.View.measure(View.java:7964)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3023)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.FrameLayout.onMeasure(FrameLayout.java:245)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.view.View.measure(View.java:7964)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.LinearLayout.measureVertical(LinearLayout.java:464)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.LinearLayout.onMeasure(LinearLayout.java:278)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.view.View.measure(View.java:7964)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3023)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.widget.FrameLayout.onMeasure(FrameLayout.java:245)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.view.View.measure(View.java:7964)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.view.ViewRoot.performTraversals(ViewRoot.java:763)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1633)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.os.Handler.dispatchMessage(Handler.java:99)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.os.Looper.loop(Looper.java:123)
03-28 16:18:57.865: WARN/ImageView(8351):     at android.app.ActivityThread.main(ActivityThread.java:4363)
03-28 16:18:57.865: WARN/ImageView(8351):     at java.lang.reflect.Method.invokeNative(Native Method)
03-28 16:18:57.865: WARN/ImageView(8351):     at java.lang.reflect.Method.invoke(Method.java:521)
03-28 16:18:57.865: WARN/ImageView(8351):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
03-28 16:18:57.865: WARN/ImageView(8351):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
03-28 16:18:57.865: WARN/ImageView(8351):     at dalvik.system.NativeStart.main(Native Method)

实际上,资源文件存在(在drawable-hdpi和drawable-ldpi中为R.drawable.star_on,Eclipse在自动完成中具有此值),这里是R.java的摘录:

public static final class drawable {
    public static final int star_off=0x7f020007;
    public static final int star_on=0x7f020008;

3 个答案:

答案 0 :(得分:1)

尝试清理和构建项目。

Android正在使用ID资源 0x00000001 搜索图片,这是不正确的。

如果不起作用,请尝试删除“ gen ”文件夹并重新构建。

祝你好运:)

答案 1 :(得分:1)

奇怪,但问题出在setViewValue函数 - 我正在根据数据库值更改ListView图标,但我没有返回true(返回false)因此我收到了这个错误。

答案 2 :(得分:0)

看起来像编译错误。在尝试构建时,请检查控制台是否出现红色错误消息。

您是否拥有一个名为1.png 1.gif 1.mp4的资源?

您不能拥有文件名为数字的资源。