Android:通过类片段中的javacode创建复选框

时间:2016-06-02 15:05:55

标签: android checkbox fragment

我正在将包含复选框的列表项添加到我的片段类中的列表中,如下所示:

public class CheckboxList extends Fragment {

...

    listViewToDo = (ListView)myView.findViewById(R.id.listViewToDo);

    //creates list of names of the default list items
    arrayListToDo = new ArrayList<String>();
    if(!arrayListToDo.contains("Menu1"))arrayListToDo.add("Menu1");
    if(!arrayListToDo.contains("Menu2"))arrayListToDo.add("Menu2");
    if(!arrayListToDo.contains("Menu3"))arrayListToDo.add("Menu3");

    //sets the checkboxes
    arrayListCheck = new ArrayList<>();
    for(int i = 0; i < arrayListToDo.size(); i++){
        CheckBox cb = new CheckBox(myView.getContext());
        cb.setText(arrayListToDo.get(i));
        arrayListCheck.add(cb);
    }
    arrayAdapterCheck = new ArrayAdapter<CheckBox>(listViewToDo.getContext(),
            android.R.layout.simple_list_item_checked, arrayListCheck);
    listViewToDo.setAdapter(arrayAdapterCheck);
...

我希望它以这种方式执行,因为用户应该能够添加和删除特定的列表项。 虽然工作正常但我的复选框看起来像这样:

checkboxes displayed incorreclty

有人能告诉我我做错了吗?

1 个答案:

答案 0 :(得分:0)

好吧,我的错,我确实知道我需要一个自定义的ArrayAdapter来使用其他对象,然后字符串显示在我的列表中。

这有助于我更好地理解适配器并为复选框编写自己的一个: http://techlovejump.com/android-listview-with-checkbox/