0

以下のコードを入力SimpleAdapterするためにを使用しています。ListView

    SimpleAdapter adapter = new SimpleAdapter(this,
            saleDriver.getOutstandings(clientId),
            R.layout.outstanding_list_row, new String[] { "sale_id",
                    "sale_date", "invoice_number", "sale_total", },
            new int[] { R.id.tt_check_box, R.id.tt_invoice_date,
                    R.id.tt_invoice_no, R.id.tt_invoice_tot });

    setListAdapter(adapter);

上記のコードによると、私はでバインドsale_idCheckBox (R.id.tt_check_box)ていlistviewます。プログラムを実行するcheckboxesと、チェックボックスの右側に表示される値がテキストとして表示されます。しかし、私はそれらを表示したくありません。

私の実際の必要性は、ユーザーがチェックしたときに、それらとバインドするcheckboxes必要があることです。sale_id

Javaプログラムsale_idでチェックインしてバインドにアクセスするにはどうすればよいですか?checkboxes

4

3 に答える 3

1

使用する

android.R.layout.simple_list_item_multiple_choice
于 2012-12-03T07:13:05.530 に答える
0

SimpleAdapter の getView() 関数をオーバーライドし、sale_id の値を使用してチェックボックスをオン/オフにします。次に、このカスタム アダプターをリストに使用します。

編集:別の答えを見て、私の洗練された推測は、これではなく複数選択ソリューションが必要であるということです(選択を見つける必要があるため)。この解決策は、既存のデータに基づいてチェックボックスを表示することです。それでもこれが必要な場合はお知らせください。コードにアクセスできるようになったら、サンプル コードを投稿します。

于 2012-12-03T07:16:56.310 に答える
0

複数選択チェックボックスで動作するリストビューを取得するコードを添付しました。

public class MultiChoiceActivity extends Activity {

String[] choice = { "選択肢 A"、"選択肢 B"、"選択肢 C"、"選択肢 D"、"選択肢 E"};

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    choiceList = (ListView)findViewById(R.id.list);

    ArrayAdapter<String> adapter
    = new ArrayAdapter<String>(this, 
      android.R.layout.simple_list_item_multiple_choice, 
      choice);
    choiceList.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
    choiceList.setAdapter(adapter);

}

参照リンク

于 2012-12-03T08:03:39.780 に答える