我正在尝试通过以下代码禁用ListView中的某些项目
public class VSsimpleCursorAdapter extends SimpleCursorAdapter implements
Filterable {
public VSsimpleCursorAdapter(Context context, int layout, Cursor c,
String[] from, int[] to) {
super(context, layout, c, from, to);
}
public boolean areAllItemsEnabled() {
return false;
}
public boolean isEnabled(int position) {
String s = "mystring"
if (/*compare an entry in cursor with s*/){
return false;
} else
return true;
}
}
问题是isEnabled
只有一个参数位置。如何使用Curser
设置Adapter
中的isEnabled
?
答案 0 :(得分:1)
没有测试过,但我想你只需要将光标移动到特定的行并获得应该与s进行比较的值。像
这样的东西public boolean isEnabled(int position) {
String s = "mystring";
// the database column of the value that you want to compare to s
int column = 0;
Cursor cursor = getCursor();
cursor.moveToPosition(position);
String value = cursor.getString(column);
if (s.equals(value)) {
return false;
} else
return true;
}