禁用更改listView android中的复选框

禁用更改listView android中的复选框,android,listview,checkbox,android-listview,Android,Listview,Checkbox,Android Listview,是否可以在android中禁用用户单击列表视图中的复选框项目?我有一个列表视图,程序决定什么是选中的,什么不是选中的,我不希望用户更改复选框的状态。有没有一个简单的方法可以做到这一点 我曾尝试将setClickable设置为false,但没有成功 谢谢如果您不想让用户设置复选框的值,只需使用此选项: checkbox.setenabled(false)或xml Commonware的评论当然是正确的-如果用户不能与它进行交互,则不应使用复选框,这会让用户感到困惑 但是,要直接回答您的问题,只需使

是否可以在android中禁用用户单击列表视图中的复选框项目?我有一个列表视图,程序决定什么是选中的,什么不是选中的,我不希望用户更改复选框的状态。有没有一个简单的方法可以做到这一点

我曾尝试将setClickable设置为false,但没有成功


谢谢

如果您不想让用户设置
复选框的值
,只需使用此选项:
checkbox.setenabled(false)
xml


Commonware的评论当然是正确的-如果用户不能与它进行交互,则不应使用复选框,这会让用户感到困惑

但是,要直接回答您的问题,只需使用
checkbox.setEnabled(false)
。当然,每行都需要这样做

当然,另一种选择是使用颜色或图标来表示您的状态。背景色只需要列表视图上正确的颜色状态列表(
android:listSelector=“@drawable/selection\u state\u drawable”
),图标只需覆盖getView即可。大致如下:

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    if (convertView == null) {
        convertView = mInflater.inflate(R.layout.my_layout, parent, false);
    }
    MyItemType data = getItem(position);
    ImageView checkImage = (ImageView) convertView.findViewById(R.id.state_icon);
    checkImage.setImageResource( data.isSelected()? R.drawable.ic_selected : R.drawable.ic_not_selected ) {
    return convertView;
}

如果不希望用户选中或取消选中,请不要使用
复选框。使用其他东西(如图标)来指示选中和未选中状态。