В моем appWidgetProvider каждый раз, когда мне нужно обновить appWidget, мне нужно создать новый объект RemoteViews и назначить его свойства:
RemoteViews views = new RemoteViews(context.getPackageName(),layout);
views.setOnClickPendingIntent(R.id.widgetLayout, pendingIntent);
view.setFloat(R.id.nick, "setTextSize", wParameters.getFontSize());
view.setTextViewText(R.id.nick,wParameters.getNick());
.........etc
appWidgetManager.updateAppWidget(appWidgetId, views);
Но на самом деле мне нужно изменить только одну вещь, а именно TextView Text.
Могу ли я как-то сохранить RemoteView для повторного использования при следующем обновлении и просто применить
view.setTextViewText(R.id.nick,wParameters.getNick());
appWidgetManager.updateAppWidget(appWidgetId, views);
снова
Или получить ранее использованный объект RemoteViews?
Я хочу добиться этого, потому что процесс установки новых свойств объекта RemoteViews снова очень дорог в моем appWidget.
Давайте предположим, что мой виджет состоит из TextView и ImageView.
Изображение ImageView выбирается в configureActivity виджета (уникально для каждого экземпляра appWidget), но обработка изображения обходится дорого.
текст TextView необходимо менять при каждом обновлении.
Я хочу оставить изображение ImageView как есть, и только изменить текст TextView. Возможно ли обновить TextView без обновления imageView?
Буду рад любой помощи и идеям!
Большое спасибо, Гал.