我正在使用 Swift 开发iOS项目,我正在尝试将搜索栏添加到我的 TableViewController
这是我的代码:
属性部分:
var UserNamesArray: NSMutableArray = []
和
var filteredUsers = [UserNamesArray]()
当我添加上一行时,它会给我一个错误:实例成员'UserNamesArray'不能用于'MyTableVC'类型。
所以这就是问题,我可以用什么来代替[UserNamesArray]
?
viewDidLoad函数:
ref.queryOrderedByChild("Job").queryEqualToValue("Programers")
.observeEventType(.Value, withBlock: { snapshot in
if let dict = snapshot.value as? NSMutableDictionary{
print("dict====== \(dict)")
for (key,value) in dict {
let mainDict = NSMutableDictionary()
mainDict.setObject(key, forKey: "userid")
if let dictnew = value as? NSMutableDictionary{
if let metname = dictnew["UserName"] as? String
{
mainDict.setObject(metname, forKey: "UserName")
}
if let metname = dictnew["Details"] as? String
{
mainDict.setObject(metname, forKey: "Details")
}
if let metname = dictnew["Email"] as? String
{
mainDict.setObject(metname, forKey: "Email")
}
}
print("mainDict========= \(mainDict)")
self.UserNamesArray.addObject(mainDict)
}
print("UserNamesArray ==== \(self.UserNamesArray)")
}
self.tableView.reloadData()
})
}
为了说清楚,我拍摄了变量值的屏幕截图:
1)dict 2)mainDict 3)UserNamesArray Please, click here
我的表视图控制器的样子: Here
我试图说清楚,因为我可以希望有人可以提供帮助。 提前谢谢!
答案 0 :(得分:0)
var filteredUsers = [UserNamesArray]()
不起作用,因为UserNamesArray
不是有效类型,它只是一个对象。
例如,在语法var foo = [Bar]()
中,Bar
是数组foo
中对象的类型。
因此,如果filteredUsers
意图保存一组String
个对象,那么你想要的是:
var filteredUsers = [String]()