我需要 :
列表视图与
items { CheckBox, then TextView } ;
当你按下 CheckBox 时,项目应该改变它的颜色。
我怎么才能得到它 ?
附言
换句话说,我需要一个带有 CheckBoxes 的 ListView,就像在 Gmail 应用程序中一样
我需要 :
列表视图与
items { CheckBox, then TextView } ;
当你按下 CheckBox 时,项目应该改变它的颜色。
我怎么才能得到它 ?
附言
换句话说,我需要一个带有 CheckBoxes 的 ListView,就像在 Gmail 应用程序中一样
答案很简单!有一个名为的组件CheckedTextView是 aTextView和 a的组合CheckBox。该组件可能会简化您的逻辑,让您可以自由地修改列表中的任何内容OnItemClickListener!
我为你写了一个例子:
    public class CheckBoxListView extends ListActivity implements OnItemClickListener{
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //Mock data
        String[] values = new String[] { "Android", "iPhone", "WindowsMobile",
                "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
                "Linux", "OS/2" };
        //android's simple_list_item_multiple_choice is a CheckedTextView
        //try creating your own later ;)
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_list_item_multiple_choice, values);
        getListView().setOnItemClickListener(this);
        setListAdapter(adapter);
    }
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
        CheckedTextView item = (CheckedTextView) arg1;
        //The change color logic is here!
        if(item.isChecked()) {
            item.setTextColor(Color.BLACK);
            item.setChecked(false);
        }
        else {
            item.setTextColor(Color.RED);
            item.setChecked(true);
        }
    }
}
创建自定义适配器并在复选框上设置侦听器,以更改您想要的内容。(在我看到你自己做了什么之前,我不会发布任何代码)。如果您不知道 Android 文档是如何真正开始的好地方。对于这个问题,您应该特别检查 LayoutInflater、BaseAdapter、ListActivity 和创建 xml 资源(确切地说是布局)。