2011-06-01 20 views
0

複数選択リストビューの情報をデータベースに保存するにはどうすればよいですか?私はリストから項目のステータスを保存したい。たとえば、私は2つの項目がチェックされている場合、私はこの状態をデータベースに保存したい。Androidの複数選択リストSQLite

おかげ

答えて

0

確かfegol、

私はあなたがすでに複数の選択肢のリストビューを設定すると仮定します。 (そうでない場合は、オンラインでhttp://www.androidpeople.com/android-listview-multiple-choice-exampleのヒープがあることを確認してください)。

ここでは、データの保存に関するヒントをご紹介します。

基本的に2つの選択肢があります。 最初のは、listview(http://developer.android.com/reference/android/widget/AbsListView.html#getCheckedItemIds())でgetCheckedItemIds()またはgetCheckedItemPositions()を使用することです。

さらに柔軟性の高いは、カスタムアダプタを書き込むことです。 isChecked()を使用して、チェックボックスがオンになっているかどうかを確認し、そのステータスをハッシュマップに保存できます。その後、最後にすべてのチェックボックスのステータスを取得することができます。

私は、2番目のアプローチのためにいくつかの疑似コードを書いています。お役に立てれば。

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

こんにちはThinknChris。チェックリストされた項目をlistviewからデータベースに保存する方法のチュートリアルを教えていただけますか?ありがとうと敬具 – unnamed