所以我试图从我的firebase数据库中只检索一个孩子的“第二个”值。 结构如下所示:
我作为输出得到的是:
然而我真正想要的只是:
someURL.com
理想情况下即使没有https或http(我可能需要if检查,因为事先并不知道所有这些)。我想有两个选项,要么在Swift中展开字符串,要么(我希望的是)只检索没有括号的实际值和开头的“url”。我在这里找不到类似的问题了。
我的检索代码:
dataSource?.populateCellWithBlock { (cell: UITableViewCell, obj: NSObject) -> Void in
let snap = obj as! FIRDataSnapshot
let childString = snap.value as! [String : AnyObject]
cell.textLabel?.text = String(childString)
}
答案 0 :(得分:2)
试试这个
dataSource?.populateCellWithBlock { (cell: UITableViewCell, obj: NSObject) -> Void in
let snap = obj as! FIRDataSnapshot
let childString = snap.value as! [String : AnyObject]
if let url = childString["url"] as? String {
cell.textLabel?.text = url
} else {
print("No value for url")
}
}
您使用的childString变量是一个包含键值的字典。您需要获取密钥“url”的值。