我查询并得到一个结果集,但是我需要做一些在sqlite where子句中不可能完成的计算,以确定listview中显示的内容。如何从光标中删除某些行?我知道这是同一个问题,但这个答案没有帮助。如果没有一种更简单的方法来实现这一点,是否可以提供一个示例?
最佳答案
它可以简单地将所有行保留在光标中,但是在显示时使用自定义适配器隐藏不需要的行。例如,如果您扩展了CursorAdapter
,那么您的bindView
实现中可能会有类似的内容:
View v = view.findViewById(R.id.my_list_entry);
boolean keepThisRow = .......; // do my calculations
v.setVisibility(keepThisRow ? View.VISIBLE : View.GONE);