Кнопка «Добавить» в относительной компоновке

1

Я хочу добавить какую-нибудь кнопку в содержимое скользящего ящика, ее содержимое является относительной компоновкой. Кнопка будет определена в Java-коде, а Relative Layout уже определена в макете xml. Итак, скажем, я хочу добавить 4 кнопки:

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

Затем я инициализирую Relative Layout:

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

Теперь, как добавить все кнопки в Relative Layout? Спасибо за помощь.

Теги:
android-layout
android-button
layout-inflater

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); 
    }
  • 0
    Спасибо человек, которому ты действительно помог: D
  • 0
    в цикле for между макетом и добавлением отсутствует точка (btn) для тех, кто просто копирует / вставляет решение;)
Показать ещё 1 комментарий
0

просто выполните следующее:

layout.addView(btn);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню