Подтвердить что ты не робот

Изменение фона RemoteView ImageView

У меня есть remoteView с ImageViews, и мне нужно программно изменить "андроид: фон".

Я знаю, как изменить "android: src" с помощью:

remoteView.setImageViewResource(int viewId, int srcId);

И он отлично работает, но как мне изменить "андроид: фон"?

Спасибо

4b9b3361

Ответ 1

Вы можете использовать метод public void setInt (int viewId, String methodName, int value).

remoteView.setInt(R.id.viewid, "setBackgroundResource", R.color.your_color)

Ответ 2

Используйте setBackgroundResource (int).

Кроме того, здесь вы можете принять к сведению. Когда вы смотрите документацию по Android, если есть элемент xml для представления, который вы можете изменить, он обычно указывает на способ внесения изменения во время выполнения.

Ответ 3

Путь к jerry-rig

Я думаю, вы могли бы сделать это, используя способ jerry-rig, делающий второй макет с новым фоном, затем вы создаете свой remoteView с помощью этого нового макета, например:

  • RemoteViews remoteViews = новые RemoteViews (context.getPackageName(), R.layout. widget1);
  • RemoteViews remoteViews = новые RemoteViews (context.getPackageName(), R.layout. widget2);

В конце концов, макет не так дорог.