2010-12-16 42 views
0

我正在使用我的一個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 有沒有人有這樣的經驗,或解決方法嗎?這可能是我面臨的問題。

回答

1

使用項目>在Eclipse中清理或從命令行中清理ant clean,然後重試。由於資源ID是整數,因此它們會在引用它們的類的字節碼中內聯,因此有時您的預編譯類可能會與新編譯中的新資源ID不同步。我主要從命令行工作,並且我總是將clean掛接到我的ant命令(例如,ant clean install)以避免此問題。

+0

我嘗試了Clean,Clean和Fix屬性,但都沒有解決這個問題。謝謝你的提示,但我不瞭解Clean。 – piusvelte 2010-12-16 16:26:32

+0

我應該澄清,在錯誤中引發的資源ID是在R.java中找到的視圖的正確標識,所以它幾乎就好像視圖還沒有被膨脹,但我不知道爲什麼會有改變。 – piusvelte 2010-12-17 14:34:14

相關問題