пятница, 25 февраля 2011 г.

Анроид список с отображением checkboxes

Доброго дня.
Пытался сделать список с checkboxes, делал всё как надо
создал layout, adapter, ну и так далее.

Позже нашёл легче вариант
http://www.androidpeople.com/android-listview-multiple-choice-example/


Ниже приведу пару снипетов кода, что б не забыть...
Обратите внимание только на выделеные  участки кода.


public class CheckboxListAdapter extends BaseAdapter{
    private Activity activity;
    private List<Vocabulary> data;
    private static LayoutInflater inflater=null;
  
    public static class ViewHolder{
        public String title;
    }
  
    //Передаётся пользовательский тип
    public CheckboxListAdapter(Activity activity, List<Vocabulary> data) {
        this.activity = activity;
        this.data=data;
        inflater = (LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }
  
    @Override
    public int getCount() {
        return data.size();
    }

    @Override
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return position;
    }

    @Override
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return position;
    }

    @Override
//Вся особенность сложных данных заключается в том, что они прикрепляются к элементу списка через ТЕГ и могут быть использованы в любое время
    public View getView(int position, View convertView, ViewGroup parent) {
         Vocabulary vocabulary=data.get(position);
         ViewHolder holder;
            if(convertView==null){
                convertView = inflater.inflate(R.layout.checkbox_item, null);
                holder=new ViewHolder();
                TextView et = ((TextView)convertView.findViewById(R.id.title));
                et.setText(vocabulary.title);
                convertView.setTag(holder);
            }
            else
                holder=(ViewHolder)convertView.getTag();
      
            return convertView;
    }

}

Комментариев нет:

Отправить комментарий