[英]Flutter Search Delegate filter not working with input
我正在使用这个Search Delegate
,但我不确定为什么我的结果不会根据我的输入而改变。 似乎listtile
只会在文本字段集中时出现,但这只是我的猜测。 这是我的代码:
final cities = ["KL", 'BANGKOK', 'LONDON', 'SEOUL', 'TOKYO'];
final sug = ['KL', 'SEOUL'];
class CustomSearchDelegate extends SearchDelegate {
@override
Widget buildResults(BuildContext context) {
//show
return SizedBox();
}
@override
Widget buildSuggestions(BuildContext context) {
final res = cities.where((p) => p.startsWith(query.toLowerCase())).toList();
return ListView.builder(
itemCount: res.length,
itemBuilder: (context, index) {
return ListTile(
tileColor: Colors.black,
onTap: () {
Navigator.of(context).push(MaterialPageRoute(builder: (context) => CityDetails(cityName: res[index])));
super.showResults(context);
},
leading: Icon(Icons.location_city),
title: Text(res[index]),
);
});
}
}
我想你已经忘记了这个p.toLowerCase().
这将解决此案
final res = cities
.where((p) => p.toLowerCase().startsWith(query.toLowerCase()))
.toList();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.