禁用listview android java中的项

禁用listview android java中的项,java,android,listview,Java,Android,Listview,我正在尝试禁用listview中的某些项目,但无法执行此操作。 我有很多布尔人 private boolean[] array; //10 items all false, and some of them true 在代码中,我正在尝试 for(int i=0;i<array.length();i++){ if(!array[i]){ listview.getChildAt(i).setEnabled(false); } } 当点击 lv.setOnItemClickLi

我正在尝试禁用listview中的某些项目,但无法执行此操作。 我有很多布尔人

private boolean[] array; //10 items all false, and some of them true
在代码中,我正在尝试

for(int i=0;i<array.length();i++){
 if(!array[i]){
   listview.getChildAt(i).setEnabled(false);
 }
}
当点击

 lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                if (view.isEnabled()) {
                     // do our code here
lv.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
if(view.isEnabled()){
//在这里执行我们的代码
感谢这一简单的解决方案

使用适配器方法。 创建一个适配器和一个viewHolder,在OnBind方法中只需获取列表项并禁用它。
使用方法将值发送到适配器,并将更改通知适配器。

您可以在适配器中设置启用状态


rowView.setEnabled(false)

您如何将适配器与此列表视图一起使用?是的,很抱歉,我现在将其添加到cdei中,但项目仍然处于活动状态,我可以按它们:(
if(lvl[position]==false){
            rowView= inflater.inflate(R.layout.listviewitemdisabled, null, true);

            rowView.setEnabled(false);

        }else
        {
            rowView= inflater.inflate(R.layout.listviewitem, null, true);
        }
 lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                if (view.isEnabled()) {
                     // do our code here