1. ホーム
  2. android

[解決済み] RelativeLayoutレイアウトパラメータをxmlではなくコードで設定するには?

2022-05-17 14:39:56

質問

例えば、画面上に3つのボタンを追加したいのですが、1つは左寄せ、1つは中央寄せ、最後の1つは右寄せにしたいです。

これらのレイアウトは xml ?

どのように解決するのですか?

基本的な例です。

RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.ALIGN_PARENT_LEFT, RelativeLayout.TRUE);
Button button1;
button1.setLayoutParams(params);

params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.RIGHT_OF, button1.getId());
Button button2;
button2.setLayoutParams(params);

見ての通り、こんな感じです。

  1. を作成します。 RelativeLayout.LayoutParams オブジェクトを作成します。
  2. 使用する addRule(int) または addRule(int, int) を使用してルールを設定します。最初の方法は、値を必要としないルールを追加するために使用されます。
  3. パラメータをビューに設定します(この場合は各ボタンに)。