繁体   English   中英

当布局未更改时,为什么会出现“找不到视图”异常的情况?

[英]Why am I getting “can't find view” exceptions when the layout hasn't changed?

我正在使用其中一个Android小部件进行工作,该小部件使用LauncherPlus添加了滚动功能,并且遇到了令人沮丧的问题。 我当前发布的代码版本,再次使用LauncherPlus,运行良好,可以滚动显示。 我添加了一项请求的功能,该功能允许更改文本大小,但是在测试更新时会引发异常。 有一个例外是:

mobi.intuitit.android.widget.SimpleRemoteViews$ActionException: can't find view:0x7f070041

我没有更改布局中的任何内容,唯一的代码更改引用了在同一代码段中已经引用的视图ID。 我浏览了R.java,发现引用了哪个资源,再次没有改变。 这是问题出处的一些代码:

itemViews.setBoundBitmap(R.id.profile, "setImageBitmap", SonetProvider.SonetProviderColumns.profile.ordinal(), 0);
itemViews.setBoundCharSequence(R.id.friend, "setText", SonetProvider.SonetProviderColumns.friend.ordinal(), 0);
itemViews.setBoundCharSequence(R.id.created, "setText", SonetProvider.SonetProviderColumns.createdtext.ordinal(), 0);
itemViews.setBoundCharSequence(R.id.message, "setText", SonetProvider.SonetProviderColumns.message.ordinal(), 0);

应用第一行时会引发异常。 出于好奇,我更改了这些行的顺序,每行都会导致异常,尽管布局仍然没有改变。 引发异常后,小部件将成功构建,但是在引发异常(强制关闭)的情况下,我无法发布此更新。 有什么想法为什么会有资源问题? 谢谢!

更新:我在这个讨论中发现似乎无法在应用程序更新时重新加载窗口小部件资源: http : //groups.google.com/group/android-developers/browse_thread/thread/55a8e44974e8c6ad? fwc=1&pli=1任何经验,或解决方法? 这可能就是我要面对的。

在Eclipse中使用Project> Clean或从命令行使用ant clean ,然后重试。 由于资源ID是整数,因此它们会内联在引用它们的类的字节码中,因此有时您的预编译类可能与新的编译中的新资源ID不同步。 我从大多在命令行工作,我总是粘性clean到我的ant命令(例如, ant clean install )来避免这一问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM