Android で動的にビューの幅と高さを設定する方法

Androidで、動的にコントロールの幅と高さを設定するには、以下の方法を使用します。

  1. LayoutParamsを使用すると、コントロールの幅と高さを設定できます。

たとえば、Button の幅を 200dp、高さを 100dp に設定するには、以下のコードを使用できます。

Button button = findViewById(R.id.button);
LayoutParams params = new LayoutParams(200, 100);
button.setLayoutParams(params);
  1. ViewのsetLayoutParams()メソッドを使って直接Viewの幅と高さを設定する。

例えば、TextView の幅を 300dp、高さを 150dp にするには、以下のコードを使用します。

TextView textView = findViewById(R.id.textView);
textView.setLayoutParams(new LayoutParams(300, 150));
  1. TypedValueクラスを使用して単位を変換し、setLayoutParamsメソッドで幅と高さの単位を指定してください。

例えば、ImageView の幅を 100 ピクセル、高さを 200 ピクセルに設定する場合、次のコードを使用できます。

ImageView imageView = findViewById(R.id.imageView);
int widthPx = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 100, getResources().getDisplayMetrics());
int heightPx = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 200, getResources().getDisplayMetrics());
imageView.setLayoutParams(new LayoutParams(widthPx, heightPx));

上記のメソッドを用いることで、ランタイム時にコントロールの幅と高さを動的に設定することができます。

bannerAds