2012-06-23 4 views
0

Как создать динамическое представление кнопки так? Здесь + кнопка добавления является статической. Другие кнопки должны быть динамически созданы, как на этом рисунке. Согласно полученным данным из базы данных, они должны быть созданы и с помощью кнопки добавления можно добавить новые кнопки.Создание динамических кнопок в Android, таких как плитки

Dynamic Button View

ответ

1

В файле XML имеют линейную компоновку вертикальной ориентации.

В файле класса Java объявить его как

ViewGroup lr = (ViewGroup)findViewVyId(R.id.dd)

for(int i = 0; i < x1; i++) 
{ 
    lr1 = new LinearLayout(this); 
    lr1.setOrientation(LinearLayout.HOIZONTAL); 
    lr.addView(lr1); 
    for(int j = 0; j < xx1; j++) 
    { 
     if(i==0) 
     { 
     if(j == 0) 
     { 
      final View child = getLayoutInflater().inflate(R.layout.nw, null); 
      lr.addView(child); 
     } 
     else 
     { 
      lr2 = new LinearLayout(this); 
      lr2.setOrientation(LinearLayout.VERTICAL); 

      for(int k = 0; k<2; k++) 
      { 
       final View b3 = new Button(this); 
       lr2.addView(b3); 
      } 
      lr.addView(lr2); 
     } 
     } 
     else 
     { 
     final View b2 = new Button(this); 
     lr.addView(b2); 
     } 
     lr1.setId(main_cnt); 
     main_cnt++; 
      if(i == 2) 
      { 
     if(j == 2) 
     { 
      break; 
     } 
      } 
    } 
} 

первый цикл решает, сколько макетов, чтобы быть в вертикальном порядке, а второй цикл решает, сколько кнопки внутри линейной компоновки в горизонтальном порядке. main_cnt используется, чтобы получить идентификатор для каждой кнопки

XML файл ребенка является, где у меня есть место надстроек (большая кнопка)

+0

насчет + добавить? – Chamath

+0

проверить обновленный код ..... –

Смежные вопросы