我正在構建一個主屏幕小部件,我的目標是在此小部件的ImageView上設置圖像,並使用setImageViewResource()
來實現此目的。和它完美的作品 - 意味着onStart()
被執行後的目標圖像R.id.user_button
改變其圖像資源R.drawable.activity_notification
- 如果我用這樣的:如果在外部函數中初始化,setImageViewResource不起作用
public class UpdateWidgetService extends Service {
public void onStart(Intent intent, int startId) {
... //Some code which is not really important
RemoteViews remoteViews = new RemoteViews(this.getPackageName(),R.layout.widget_layout);
remoteViews.setImageViewResource(R.id.user_button, R.drawable.activity_notification);
}
}
的問題是我已經把setImageViewResource()
內的外部功能,當試圖構建類似下面的代碼時拒絕工作 - 意味着在執行onStart()
執行後,目標圖像R.id.user_button
的圖像資源保持不變。
public class UpdateWidgetService extends Service {
public void onStart(Intent intent, int startId) {
... //Some code which is not really important
changeImagePicture();
}
public void changeImagePicture() {
RemoteViews remoteViews = new RemoteViews(this.getPackageName(),R.layout.widget_layout);
remoteViews.setImageViewResource(R.id.user_button, R.drawable.activity_notification);
}
}
我想我是一個noob,我錯過了一些非常簡單和非常重要的事情。你能指點我的錯誤,所以我可以讓我的代碼最後工作;) Merci beaucoup!
你說你改變它在外部類,但你是顯示的方法( changeImagePicture)在您的UpdateWidgetService類中。是這種方法還是外部類?請同時解釋發生了什麼。什麼「拒絕工作」是什麼意思? – Simon
@Simon你絕對正確,我只是搞砸了這個_classes/functions_的定義。我試圖通過在'public void onStart()'之外聲明'public void changedImagePicture()'來改變ImageResource,現在它不能正常工作。我已經更新了我的問題,並且強調了應該發生的事情以及實際發生的事情。請檢查。如果你需要更多的澄清,請讓我知道。 – LoomyBear
好的,這有幫助嗎? http://stackoverflow.com/questions/4433464/settextviewtext-not-updating-widget – Simon