我正在使用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_id
中绑定了CheckBox (R.id.tt_check_box)
和listview
。当我运行程序时,checkboxes
的值显示在CheckBox右侧作为文本。但我不想展示它们。
我的实际需求是,当用户选中checkboxes
时,我需要sale_id
与他们绑定。
如何在我的java程序中使用选中的sale_id
访问checkboxes
绑定?
答案 0 :(得分:1)
使用
android.R.layout.simple_list_item_multiple_choice
答案 1 :(得分:0)
覆盖SimpleAdapter中的getView()函数,并使用sale_id的值来选中/取消选中该复选框。然后将此自定义适配器用于列表。
编辑: 在看另一个答案时,我的猜测是你需要多选择解决方案而不是这个(因为你需要找出选择)。此解决方案更多的是显示基于现有数据的复选框。如果您仍然需要这个,请告诉我,我将在访问我的代码后发布示例代码。
答案 2 :(得分:0)
我已附加代码以获取适用于多重复选框的列表视图..
public class MultiChoiceActivity extends Activity {
String [] choice = {" 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);
}