динамический флажок андроид

0

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

Создание таблицы с помощью флажка.

TableLayout ll = (TableLayout) findViewById(R.id.tablelayout22);


final TableRow tr = new TableRow(this);                       
LayoutParams lp = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);

tr.setId(i);                  
tr.setLayoutParams(lp);
lp.setMargins(10, -10, 15, 5);

CheckBox feature1=new CheckBox(this);
feature1 = new CheckBox(this);
feature1.setId(i);

final TextView fin = new TextView(this);
fin.setLayoutParams(lp);
fin.setText(FinancialYear1);

tr.addView(feature1);
tr.addView(fin);

ll.addView(tr, new TableLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));

OncheckChangedListener:

feature1.setOnCheckedChangeListener(new OnCheckedChangeListener() {
        @Override
 public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
    if (isChecked) {
        //......
    }                               
    else{


    //......
    }
Теги:
checkbox

1 ответ

0

если вы хотите, чтобы первый CB был истинным, вы должны добавить следующую треску:

boolean b = true;
feature1.setEnabled(b)

и со значением b делать все, что вы хотите сделать,

и в продолжении, если сначала вы проверили в OncheckChangedListener вы должны получить идентификатор CB и изменить другой CB со всеми, что вы хотите сделать

ОБНОВИТЬ /////

у вас есть все идентификатор, поэтому вы должны хранить его в каком-то списке или массиве, и когда пользователь нажимает один CB в for, вы делаете все, что хотите, я пишу для вас полукод:

 for ( int i = 0 ; i < list.size ; i++)
 {
  if (!list.get(i).equal (id))
  {
    Checkbox ch = findViewByid(list.get(i);
    /// do what you want to other checkbox 
  } 
  else
     /// do what you want with checked CB
 }

извините, потому что я не рядом с IDE, чтобы проверить свой код, извините за ошибку кода, я надеюсь, что это может помочь вам

  • 0
    Мой первый CB должен быть включен при запуске, а не проверен.
  • 0
    что вы хотите сказать о включении?
Показать ещё 6 комментариев

Ещё вопросы

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