Android: динамически добавлять пользовательские флажки в tableLayout - PullRequest
3 голосов
/ 23 мая 2010

Что я должен сделать, чтобы использовать пользовательские флажки, если я динамически добавляю свои флажки в свой код?(В коде java, а не в файлах XML.) Я следую этому учебнику , но с его помощью я не могу достичь своей цели.

Например, у меня есть tableLayout и я хочу добавить флажок для каждой новой строки, которую я имею.

Спасибо всем.

Ответы [ 2 ]

3 голосов
/ 20 мая 2011

Если вы хотите добавить пользовательские флажки, попробуйте это:

StateListDrawable stateList = new StateListDrawable();
int statePressed = android.R.attr.state_pressed;
int stateChecked = android.R.attr.state_checked;
stateList.addState(new int[] {-stateChecked}, new BitmapDrawable(BitmapFactory.decodeResource(getResources(), R.drawable.check_3)));
stateList.addState(new int[] {stateChecked}, new BitmapDrawable(BitmapFactory.decodeResource(getResources(), R.drawable.check_1)));
stateList.addState(new int[] {statePressed}, new BitmapDrawable(BitmapFactory.decodeResource(getResources(), R.drawable.check_2)));
final CheckBox box = new CheckBox(this);
box.setButtonDrawable(stateList);
3 голосов
/ 23 мая 2010

вы можете сделать это так

TableLayout tl=new TableLayout(this);  
 TableRow tr=new TableRow(this);  
 CheckBox chk=new CheckBox(this);  
 chk.setText("Hello");  
 tr.addView(chk);         
 tl.addView(tr);  
 setContentView(tl); 

надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...