web-dev-qa-db-ja.com

remoteViewImageViewの背景を変更する

ImageViewsを備えたremoteViewがいくつかあり、「Android:background」をプログラムで変更する必要があります。

「Android:src」を次のように変更する方法を知っています。

remoteView.setImageViewResource(int viewId, int srcId);

正常に動作しますが、「Android:background」を変更するにはどうすればよいですか?

ありがとう

22
BrainCrash

public void setInt (int viewId, String methodName, int value)メソッドを使用できます。

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

ジェリーリグウェイ

新しい背景で2番目のレイアウトを実行するjerry-rigの方法を使用してそれを行うことができると思います。次に、次のように、この新しいレイアウトを使用してremoteViewを作成します。

  • RemoteViews remoteViews = new RemoteViews(context.getPackageName()、R.layout .widget1);
  • RemoteViews remoteViews = new RemoteViews(context.getPackageName()、R.layout .widget2);

結局のところ、レイアウトはそれほど高価ではありません。

0
Charleston

setBackgroundResource(int) を使用します。

また、ここにあなたが注意するかもしれない何かがあります。 Androidドキュメント を見ると、変更可能なビューのxml要素がある場合、通常は実行時に変更を行うメソッドを指します。

0