Java listview中的复选框

Java listview中的复选框,java,android,Java,Android,我想在listview的单击事件中设置一个复选框。 如何设置正确的复选框 这是我的代码: listView.setOnItemLongClickListener(new OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> adapter, View view, int position, l

我想在listview的单击事件中设置一个复选框。 如何设置正确的复选框

这是我的代码:

    listView.setOnItemLongClickListener(new OnItemLongClickListener()
    {
        @Override
        public boolean onItemLongClick(AdapterView<?> adapter, View view,
                int position, long id)
        {
                         Checkbox checkbox = ??
                         checkbox.setChecked(true);

            return true;
        }
    });
listView.setOnItemLongClickListener(新的OnItemLongClickListener()
{
@凌驾
公共布尔值长单击(适配器查看适配器、视图、,
内部位置,长id)
{
复选框=??
checkbox.setChecked(true);
返回true;
}
});

您需要一个自定义适配器基本列表视图,可以从以下位置获得::

试用
可能有助于u

首先,活动中的JavaCode:

listview.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView parentView, View childView, int position, long id)    
    {
         CheckBox cb = (CheckBox) childView.findViewById(R.id.file_checkbox);
         cb.setChecked(true);
    }
}
其次,不要忘记布局xml中的复选框,将android:focusable=“false”设置为xml中的复选框,否则listview无法获取单击事件

第三,也是最重要的一点,因为当listview滚动时,适配器中的getView()将被调用为unceptied,复选框将被移动为unceptied,所以在getView()中设置复选框状态非常重要,下面是我在getView()中的示例:


勾选此项仅包含链接的答案为错误答案。当链接脱机时,这将变得无用。如果你只是想提供一个链接,那么就改为发表评论。如果你想发布一个实际的答案,总结一下链接中的“答案”是什么,并指向它以获取更多信息。除此之外:该网站的内容非常长。指向回答问题的特定部分。
if(mFiles[position].isSeleted){
    checkbox.setChecked(true);
} else {
    checkbox.setChecked(false);
}