背景描画可能(@ drawable/bg)をプログラムで削除したい。それを行う方法はありますか?
現在、レイアウトに次のXMLがあります。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
Android:id="@+id/widget29"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:background="@drawable/bg">
</RelativeLayout>
これを試して
RelativeLayout relative = (RelativeLayout) findViewById(R.id.widget29);
relative.setBackgroundResource(0);
RelativeLayout documentation のsetBackground関数を確認してください
setBackgroundResource(0)
が最適なオプションです。 ドキュメント から:
特定のリソースに背景を設定します。リソースは、Drawableオブジェクトを参照するか、0を参照して背景を削除する必要があります。
API 1以降なので、どこでも動作します。
setBackground
はかなり後のAPI 16で追加されたため、minSdkVersion
が16未満の場合は機能しません。
これにより、背景色を削除できました。 setBackgroundColor(Color.TRANSPARENT)
このコードを試してください:
imgView.setImageResource(Android.R.color.transparent);
これも動作します:
imgView.setImageResource(0);
ただし、これが機能しないことに注意してください:
imgView.setImageResource(null);
私はこれをAndroid 4+で試します:
view.setBackgroundDrawable(0);
まず、書く必要があります
Android:visibility="invisible" <!--or set VISIBLE-->
次に、これを使用して表示します
myimage.setVisibility(SHOW);//HIDE
この方法で最高のパフォーマンス:
imageview.setBackgroundResource(R.drawable.location_light_green);
これを使って。
setBackgroundColor(Color.TRANSPARENT)
を使用して背景を透明に設定するか、setBackgroundColor(0)
を使用します。ここで、Color.TRANSPARENT
はカラークラスのデフォルト属性です。それはうまく動作します。
優れた答えに加えて、xmlでこれを実現したい場合は、次を追加できます。
Android:background="@Android:color/transparent
あなたの意見に。
ケースシナリオがあり、上記のすべての回答を試しましたが、古いイメージの上に常に新しいイメージが作成されました。私のために働いた解決策は次のとおりです。
imageView.setImageResource(R.drawable.image);
私のこの仕事:
yourview.setBackground(null);