Android:动态显示适配器onLongClick中的所有复选框

时间:2016-04-29 19:07:41

标签: android listview checkbox custom-adapter

我最近在学习自定义适配器概念。

问题出在onlongClick连续中, 我想显示在longclicked行中检查的复选框,最初位于android:visibility="gone"。并且还显示未在未选中状态下单击的其他行中的复选框。

我在这里更改了此代码的某些部分。 http://windrealm.org/tutorials/android/listview-with-checkboxes.php

在simplerow.xml中我做了 android:visibility="gone"最初。

现在我在getView(...)方法

中创建了一个onLongClickListener
textView.setOnLongClickListener (new View.OnLongClickListener() {
     @Override
     public boolean onLongClick(View v) {
         CheckBox cb = (CheckBox) v;
         Planet planet = (Planet) cb.getTag();  
         planet.setVisibility(View.VISIBLE);
         planet.setChecked(true);
     }
});

现在上面的代码只会影响longClicked行。如何在未点击的行中进行更改?

长按一次调用notifyDataSetChanged()不起作用,因为其他行最初在android:visibility="gone"中有复选框。

请帮忙。还有其他工作可能吗?

1 个答案:

答案 0 :(得分:0)

ListView随附适配器。所有模型项都将通过Adapter中名为getView的实现方法扩展到视图项中。如果您想在不更改数据的情况下更新视图,请稍后再调用notifyDataSetChanged