线程1:EXC_BAD_INSTRUCTION(代码= EXC_I386_INVOP,子码=为0x0)
我试图写在斯威夫特搜索栏代码(Xcode中):线程1:EXC_BAD_INSTRUCTION(代码= EXC_I386_INVOP,子码=为0x0)
@IBOutlet weak var searchPost: UISearchBar!
@IBOutlet weak var tbvPost: UITableView!
var posts = [Post]()
var filteredPosts = [Post]()
extension PostViewController: UITableViewDelegate, UITableViewDataSource {
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if searchPost.text != "" {
return self.filteredPosts.count
}
return self.posts.count
}
if searchPost.text != "" {
,我得到这个错误该线:
Thread 1:EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
任何想法?
你应该像
if searchPost?.text != nil{
// do your stuff here or in an else statement
}
同样的错误。谢谢 – DjangoGuy
作为第一个评论说,用这么少的代码,我们很难复制你正在尝试做的事情,请更新你的问题,包括更多的信息,如果你想更好地帮助 – CarpenterBlood
。我希望我没有错过任何东西 – DjangoGuy
我猜测试的零,而不是一个空字符串 的修复是searchPost
是nil
,因为你从来没有迷上了从故事板到该出口处的搜索栏。
这个小代码很难......但是你确认'searchPost'是否为零? – apineda
这是断言失败,意味着您正在访问或强制解包零值或比较不兼容的值类型。 – dylanthelion