2013-01-23 79 views
1

我正在使用一個應用程序,並且我想定期更新這個窗口小部件。我已經設置android:updatePeriodMillis =「3600000」,但我的ListView不會更新。我錯過了什麼?Android更新窗口小部件ListView

回答

2

你可以請檢查你的onUpdate(...)函數是否接到呼叫。如果onUpdate()在更新週期後被調用,則需要爲ListView的適配器調用notifyAppWidgetViewDataChanged();爲了更新它。

AppWidgetManager mgr = AppWidgetManager.getInstance(context); 
int[] ids = mgr.getAppWidgetIds(new ComponentName(context, AppWidgetProvider.class)); 
mgr.notifyAppWidgetViewDataChanged(yourWidgetId, R.id.list_view); 
+0

小工具查看factorys不使用適配器,至少我的沒有。你如何獲得這個適配器對象? – SweSnow

+0

如果你的ListView很髒(List中有一些變化),那麼你可以調用ListView的invalidate()來強制重繪。 –

+1

我很確定你在談論我知道如何處理的常規ListViews。我在有沒有ListView對象使用的小部件中詢問ListView。 – SweSnow

相關問題