【发布时间】:2016-07-22 05:03:31
【问题描述】:
我正在使用 DataSet 来获取和设置值。现在我需要实现 SearchView 进行过滤。 SearchQuery 像“abcd”一样传递。但是我如何将“abcd”字符串与数据进行比较是在 List DataSet 中。我试图通过使用 contains & equals 来获得它。但它没有用。
private void SEARCH_QUERY(String strSearch) {
String NEWTEXT = strSearch.trim();
if (RestaurantDataSet.equals(NEWTEXT)) {
RestaurantDataSet = new ArrayList<>();
for (int i = 0; i < RestaurantDataSet.size(); i++) {
String PRODUCTID = String.valueOf(RestaurantDataSet.get(i).getIG_PRODUCTID());
String PRODUCTNAME = RestaurantDataSet.get(i).getIG_PRODUCTNAME();
String CATEGORY_NAME = RestaurantDataSet.get(i).getIG_CATEGORYNAME();
String CAT_ID = RestaurantDataSet.get(i).getIG_CATEGORY_ID();
String IMG_ID = String.valueOf(RestaurantDataSet.get(i).getIG_IMAGEURL());
int LIKE = RestaurantDataSet.get(i).getIG_LIKECOUNT();
String PRICE = RestaurantDataSet.get(i).getIG_SALES_PRICE();
String VOUCHER_ID = RestaurantDataSet.get(i).getIG_VOUCHER_ID();
Restaurant_Beam item = new Restaurant_Beam();
item.setIG_LIKECOUNT(LIKE);
item.setIG_PRODUCTID(PRODUCTID);
item.setIG_SALES_PRICE(PRICE);
item.setIG_VOUCHER_ID(VOUCHER_ID);
item.setIG_CATEGORY_ID(CAT_ID);
item.setIG_IMAGEURL(IMG_ID);
item.setIG_PRODUCTNAME(PRODUCTNAME);
item.setIG_CATEGORYNAME(CATEGORY_NAME);
RestaurantDataSet.add(item);
}
adapter = new CardAdapter(RestaurantDataSet, context);
recyclerView.setAdapter(adapter);
adapter.notifyDataSetChanged();
}
}
【问题讨论】:
-
什么..?为什么要将您的列表与字符串进行比较??
-
试试这个答案.....stackoverflow.com/a/30429439/3678308
-
谢谢@ExceptionLover。我得到了确切的结果。
-
我喜欢接受并支持您的回答。因此,如果可能的话,请更改您的评论以回答。 @ExceptionLover
-
这是示例代码检查Stackoverflow and github links
标签: android arraylist listobject