Swift 4 搜索栏中的搜索过滤器问题
Posted
技术标签:
【中文标题】Swift 4 搜索栏中的搜索过滤器问题【英文标题】:Search filter issues in Search Bar in Swift 4 【发布时间】:2018-01-31 13:05:33 【问题描述】:let strArray :NSArray = self.filteredArray?.object(at: indexPath.row) as! NSArray
这一行显示的错误是:
无法将“__NSDictionaryM”(0x1b5b8a800) 类型的值转换为 'NSArray' (0x1b5b89950)。
我怎样才能改变这个?
【问题讨论】:
filteredArray
中存储的值类型是什么?根据错误,它是 NSDictionary
并且您要强制将其强制类型转换为 Array
首先要摆脱强制转换,使用if let ... as? NSArray
语法可以防止这种崩溃。之后,您将能够查明为什么要尝试将 NSDictionary
转换为 NSArray
。
【参考方案1】:
像这样试试。
let strArray : NSDictionary = self.filteredArray?.object(at: indexPath.row) as! NSDictionary;
此错误提示“无法将实际类型 NSDictionary 转换为预期类型 NSArray”
【讨论】:
以上是关于Swift 4 搜索栏中的搜索过滤器问题的主要内容,如果未能解决你的问题,请参考以下文章
尝试在 Swift 中使用 UISearchResult。如何实现过滤?