1. ホーム
  2. android

[解決済み】ImageView のマージンを xml ではなくコードで設定する方法

2022-04-15 15:30:33

質問

を未知数で追加したいのですが ImageView ビューをマージン付きでレイアウトに追加します。XMLでは layout_margin このように

<ImageView android:layout_margin="5dip" android:src="@drawable/image" />

があります。 ImageView.setPadding() がない。 ImageView.setMargin() . という線引きだと思います。 ImageView.setLayoutParams(LayoutParams) が、そこに何を送り込めばいいのかわからない。

どなたかご存知ですか?

解決方法は?

android.view.ViewGroup.MarginLayoutParams にはメソッドがあります。 setMargins(left, top, right, bottom) . 直接のサブクラスは FrameLayout.LayoutParams , LinearLayout.LayoutParamsRelativeLayout.LayoutParams .

を使うなど。 LinearLayout :

LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
lp.setMargins(left, top, right, bottom);
imageView.setLayoutParams(lp);

MarginLayoutParams

余白をピクセル単位で設定します。拡大縮小するには

context.getResources().getDisplayMetrics().density

ディスプレイメトリクス