我正在实现一个app小部件,我希望能够在小部件布局中更改单个视图的属性,而无需从头开始重建所有RemoteView,这涉及加载XML等,在某些情况下不需要.有没有办法说“在当前窗口小部件布局中由特定ID标识的视图上更新属性X”?我已经看到AppWidgetManager类中有一个partialUpdateAppWidget方法,但是我无法理解,也不是为了这个目的而不是必须如何使用它.你能帮助我或指向一个有用的链接或示例吗?
最佳答案
是的,您可以在AppWidgetManager类中使用partialUpdateAppWidget方法.
例如,如果要更新窗口小部件中的文本视图:
例如,如果要更新窗口小部件中的文本视图:
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
rv = new RemoteViews(context.getPackageName(),R.layout.widgetlayout);
rv.setTextViewText(R.id.ofTextViewInWidgetLayoutXML,"Hello World");
appWidgetManager.partiallyUpdateAppWidget(appWidgetIds,rv);
参考:
Just update a widget RemoteViews instead of completly creating a new one?