0

私はRelativeLayoutを作成しましたlayout/activity.xml

そして、次の方法でプログラムでいくつかの要素を追加したいと思います:

RelativeLayout rlayout = (RelativeLayout) findViewById(R.id.relativeLayout1); 
RelativeLayout.LayoutParams p = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
 rlayout.addView(CustomView,p);

それは機能しますが、追加された要素がすべてのビューを埋めるわけではありませんが、必要です。

また、そのような要素を正方形 (幅 = 高さ) に追加したいのですが、どうすればよいですか?

4

1 に答える 1

0

すべてのビューを埋めるLayoutParams.MATCH_PARENTには の代わりに使用しLayoutParams.WRAP_CONTENTます。レイアウトを正方形にするには、作成int width,height = 300;してから:

RelativeLayout.LayoutParams p = new RelativeLayout.LayoutParams(width, height);

または、カスタム ビューの高さと幅を渡しLayoutParams.WRAP_CONTENTて変更します。RelativeLayout.LayoutParams

ビューを正方形にするには:

    Button customView = new Button(this);
    customView.setLayoutParams(new RelativeLayout.LayoutParams(200, 200));

    RelativeLayout rlayout = (RelativeLayout) findViewById(R.id.relativeLayout1); 
    rlayout.addView(customView);

すべてのビューを塗りつぶすには、これを使用できます:

    Button customView = new Button(this);
    customView.setLayoutParams(new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));

    RelativeLayout rlayout = (RelativeLayout) findViewById(R.id.relativeLayout1); 
    rlayout.addView(customView);

また、次のようにレイアウト アイテムにルールを追加することもできます。

        p.addRule(RelativeLayout.ALIGN_PARENT_LEFT);

幸運をお祈りしています。

于 2013-06-25T11:04:31.413 に答える