2011-06-01 2 views
0

Как я могу сохранить информацию из списка множественного выбора в базу данных? Я хочу сохранить статус элемента из списка. Например, если у меня есть 2 элемента, я хочу сохранить этот статус в базе данных.Список выбора нескольких Android SQLite

Благодаря

ответ

0

Конечно fegol,

Я предполагаю, что вы уже установили несколько ListView выбор. (если нет, пожалуйста, проверьте онлайн, есть их кучи http://www.androidpeople.com/android-listview-multiple-choice-example).

Здесь я хотел бы рассказать вам о проблеме с сохранением данных.

В принципе, есть два общих варианта. Первым является использование getCheckedItemIds() или getCheckedItemPositions() в вашем списке (http://developer.android.com/reference/android/widget/AbsListView.html#getCheckedItemIds()).

Второй, который является более гибким, заключается в том, чтобы написать пользовательский адаптер. Вы можете использовать isChecked(), чтобы проверить, был ли установлен флажок, а затем сохранить статус в хэш-файл. Затем вы можете получить все статусы флажков в последний раз.

Я поставил для вас второй псевдокод для второго подхода. Надеюсь это поможет.

ArrayList<Boolean> checkList = new ArrayList<Boolean>(); 
    // TODO: put some empty data into checkList 



    private OnItemClickListener myListItemClickListener = new ListView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> arg0, View v, int position, long id) { 


     if(checkList.get(position)){ 
      checkList.set(position, false); 
     }else{ 
      checkList.set(position, true); 
     } 

     ((mAdapter)mList.getAdapter()).notifyDataSetChanged(); 

     } 
    } 



    class mAdapter extends BaseAdapter{ 

     @Override 
     public View getView(int position, View convertView, ViewGroup parent) { 

      if (checkList.get(position)){ 
       checkBox.setChecked(true); 
      }else{ 
       checkBox.setChecked(false); 
      } 
     } 
    } 
+0

Hi ThinknChris. Можете ли вы показать мне несколько руководств по сохранению отмеченных элементов из списка в базу данных? спасибо и приветствую – unnamed

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