1

スライドドロワーのコンテンツにボタンを追加したいのですが、そのコンテンツは相対レイアウトです。ボタンはJavaコードで定義され、相対レイアウトはすでにxmlレイアウトで定義されています。それで、4つのボタンを追加したいとしましょう:

for (int i=0; i<4; i++) {
     Button btn = new Button(this);
     btn.setId(i);
     btn.setText("some_text");
}

次に、相対レイアウトを初期化します。

RelativeLayout layout = (RelativeLayout)findViewById(R.id.slidingDrawerContent);

では、すべてのボタンを相対レイアウトに追加するにはどうすればよいですか?助けてくれてありがとう。

4

2 に答える 2

3
RelativeLayout layout = (RelativeLayout)findViewById(R.id.slidingDrawerContent);
for (int i=0; i<4; i++) {
     Button btn = new Button(this);
     btn.setId(i);
     btn.setText("some_text");
    layout.add(btn); 
}

また

少し進んで

 RelativeLayout layout = (RelativeLayout)findViewById(R.id.slidingDrawerContent);
 RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(
        RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT );


    for (int i=0; i<4; i++) {
         Button btn = new Button(this);
         btn.setId(i);
         btn.setText("some_text");

        // lp.addRule(RelativeLayout.RIGHT_OF, <Id>);

         layout.addView(tv2, lp); 
    }
于 2012-05-25T10:29:30.900 に答える
0

単にこれを行う:

layout.addView(btn);
于 2012-05-25T10:27:33.680 に答える