gpt4 book ai didi

ios - 转到详细 View Controller

转载 作者:行者123 更新时间:2023-11-28 15:16:52 25 4
gpt4 key购买 nike

我有一个带有 Collection View 的 View Controller ,当我单击 Collection View 的单元格时,我想转入一个 Controller ,该 Controller 包含我单击的单元格的用户拥有的所有帖子。

var posts = NSMutableArray()

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "UsersProfile" {
let vc = segue.destination as! UsersProfileViewController
let postsForUser = posts.filter {
guard let post = $0 as? [String : Any] else {
return false
}
return post["username"] as? String == selectedUserName
}
print("postForUser = \(postsForUser)")
vc.posts = postsForUser as! NSMutableArray
}
}

当我使用 xcode 8 时,它工作得非常好,当我更新到 xcode 9 时,当我单击单元格时它崩溃了,我不确定如何识别 xcode 9 中的问题。

最佳答案

post 字典包含带有“username”键的值,它是一个 String 类型,因此过滤器将返回 Dictionary<String, Any> 的数组。或 [[String: Any]] 不是 NSMutableArray。还有 NSMutableArray是 Objective-C 集合类型,在 Swift 中没有使用。所以 ProfileViewController 中的帖子应该是 [[String: Any]] 类型

let postsForUser: [[String: Any]] = posts.filter {
guard let post = $0 as? [String : Any] else {
return false
}
return post["username"] as? String == selectedUserName
}
print("postForUser = \(postsForUser)")
vc.posts = postsForUser //vc.posts should be [[String: Any]]

关于ios - 转到详细 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46701241/

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