0

動的に linerlayout を作成しようとすると、2 つのボタンが作成されました。

LinearLayout layout = new LinearLayout(this);
        layout.setOrientation(LinearLayout.HORIZONTAL);
        layout.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
                LayoutParams.FILL_PARENT));

        TextView titleView = new TextView(this);
        titleView.setWidth(LayoutParams.WRAP_CONTENT);
        titleView.setHeight(LayoutParams.WRAP_CONTENT);
        titleView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        titleView.setText("Hallo Welt!");
        layout.addView(titleView);

        Button btnConnect = new Button(this);
        btnConnect.setText("Connect");
        layout.addView(btnConnect);

        Button btnDisconnect = new Button(this);
        btnDisconnect.setText("Disconnect");
        layout.addView(btnDisconnect);

接続ボタンを左隅に配置し、切断ボタンを右隅に配置したい。どうやってやるの?

4

2 に答える 2

1

ボタンのレイアウト重力を設定しようとしましたか?

LayoutParams params;

Button btnConnect = new Button(this);
params = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.gravity = Gravity.Left;
btnConnect.setLayoutParams(params);
...
Button btnDisconnect = new Button(this);
params = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.gravity = Gravity.Right;
btnConnect.setLayoutParams(params);
...

レイアウト重力は、親のどこにビューを配置するかを定義します(Androidの重力とlayout_gravityも参照してください)

乾杯

于 2013-03-04T14:19:37.513 に答える
1

線形レイアウトの代わりに RelativeLayout を使用できます。

RelativeLayout.Layoutparams params = のレイアウト パラメータにルールを追加します。 RelativeLayout.Layoutparams params = (RelativeLayout.LayoutParams)button.getLayoutParams(); params.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);

于 2013-03-04T14:20:48.757 に答える