gpt4 book ai didi

ios - 搜索栏在 swift 3 中不起作用。无法将类型 (_) -> Bool 的值转换为预期的参数类型 NSPredicate

转载 作者:行者123 更新时间:2023-11-29 00:23:31 25 4
gpt4 key购买 nike

不断显示错误:无法将类型 (_) -> Bool 的值转换为预期的参数类型 NSPredicate在线:

filtered = OrdersArray.filter(using: { (text) -> Bool in
let tmp: NSString = text
let range = tmp.rangeOfString(searchText, options: NSStringCompareOptions.CaseInsensitiveSearch)

func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {

filtered = OrdersArray.filter(using: { (text) -> Bool in
let tmp: NSString = text
let range = tmp.rangeOfString(searchText, options: NSStringCompareOptions.CaseInsensitiveSearch)
return range.location != NSNotFound
})

if(filtered.count == 0){
searchActive = false;
} else {
searchActive = true;
}
self.tableView.reloadData()
}

UISearchBarDelegateUISearchDisplayDelegate 委托(delegate)均已标记searchBarTextDidBeginEditingsearchBarTextDidEndEditingsearchBarCancelButtonClickedsearchBarSearchButtonClicked功能已写请告诉我还可以做什么来搜索 NSMutableArray 中的数据。

这是我的数组。

{
orders = (
{
"created_at" = "2017-05-01 04:49:17";
id = 591;
"order_status" = CONFIRMED;
"pickup_code" = 4356219;
store = {
address1 = "**********";
city = "**********";
description = "*************";
logo = "fghdshdx.png";
name = "*******";
"postal_code" = 110006;
storeTotal = "20.00";
"store_id" = 4;
"tin_number" = M1O2R3E4MORE;
};
total = "20.00";
"updated_at" = "2017-05-01 04:49:20";
"user_address_id" = "<null>";
"user_id" = 5372;
"user_name" = "Amit Sinha";
}
);
status = 1;

最佳答案

只是不要使用NSArray!

我猜你的 OrdersArray 是一个 NSArrayNSMutableArray。您应该首先将其转换为快速数组:

let swiftArray = Array(OrdersArray).map {  $0 as! NSString }

然后过滤swift数组:

filtered = swiftArray.filter(using: { (text) -> Bool in
let range = tmp.rangeOfString(searchText, options: NSStringCompareOptions.CaseInsensitiveSearch)
return range.location != NSNotFound
})

关于ios - 搜索栏在 swift 3 中不起作用。无法将类型 (_) -> Bool 的值转换为预期的参数类型 NSPredicate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43679728/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com