1
我正在使用一个应用程序,并且我想定期更新这个窗口小部件。我已经设置android:updatePeriodMillis =“3600000”,但我的ListView不会更新。我错过了什么?Android更新窗口小部件ListView
我正在使用一个应用程序,并且我想定期更新这个窗口小部件。我已经设置android:updatePeriodMillis =“3600000”,但我的ListView不会更新。我错过了什么?Android更新窗口小部件ListView
你可以请检查你的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);
小工具查看factorys不使用适配器,至少我的没有。你如何获得这个适配器对象? – SweSnow
如果你的ListView很脏(List中有一些变化),那么你可以调用ListView的invalidate()来强制重绘。 –
我很确定你在谈论我知道如何处理的常规ListViews。我在有没有ListView对象使用的小部件中询问ListView。 – SweSnow