0

Android開発者に質問があります。ボタン付きのレイアウト(xmlではなくプログラムで開発)があり、ボタンでレイアウト全体を埋めたいのですが、現在はそうではなく、理由はわかりません。すべてが正しく設定されていると思いました。ボタンの重力とレイアウトパラメータですが、これが私が持っているものです。あなたが私を正しい方向に向けることができれば、私は本当にそれをいただければ幸いです!ありがとう。

LinearLayout bottom = new LinearLayout(this);
bottom.setOrientation(LinearLayout.HORIZONTAL);  
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
params.gravity = Gravity.FILL;
bottom.setLayoutParams(params);  

bottom.setBackgroundColor(Color.BLUE);

Button eqbttn = new Button(this);
eqbttn.setText("=");
eqbttn.setOnClickListener(new OnClickListener(){
    public void onClick(View v) {

    }
});
bottom.addView(eqbttn);
4

1 に答える 1

0

MATCH_PARENTにサイズを適用しただけLinearLayoutです。ボタンにも適用する必要があります。

Button eqbttn = new Button(this);
LinearLayout.LayoutParams eqparams = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
eqbttn.setLayoutParams(eqbttn);
eqbttn.setText("=");
eqbttn.setOnClickListener(new OnClickListener(){
    public void onClick(View v) {

    }
});
bottom.addView(eqbttn);

これにより、ボタンが垂直方向と水平方向の両方で LAYOUT を埋めます。画面全体を占めるようにレイアウト自体が必要な場合は、それも変更しWRAP_CONTENTますMATCH_PARENT

また、この場合、 のGravity.FILLレイアウト パラメータは必要ありませんLinearLayout

于 2012-09-05T04:25:58.117 に答える