swift - 如何在火种风格的应用程序上只显示男性或女性用户
问题描述
我购买了关于如何通过“zero2launch”制作火种应用程序的 udemy 教程并按照它进行操作,它运行良好,但是,卡片上的用户是男性和女性,我想找到一种方法 - 使用分段控制 - 来只显示男性或女性。
我已经尝试向他们发送消息,但几天后还没有得到回复,所以我现在转向 stackOverflow 社区来帮助我。
我相信这是适当的代码
func findUsers() {
if queryHandle != nil, myQuery != nil {
myQuery.removeObserver(withFirebaseHandle: queryHandle!)
myQuery = nil
queryHandle = nil
}
guard let userLat = UserDefaults.standard.value(forKey: "current_location_latitude") as? String, let userLong = UserDefaults.standard.value(forKey: "current_location_longitude") as? String else {
return
}
let location: CLLocation = CLLocation(latitude: CLLocationDegrees(Double(userLat)!), longitude: CLLocationDegrees(Double(userLong)!))
self.users.removeAll()
myQuery = geoFire.query(at: location, withRadius: distance)
queryHandle = myQuery.observe(GFEventType.keyEntered) { (key, location) in
if key != Api.User.currentUserId {
Api.User.getUserInforSingleEvent(uid: key, onSuccess: { (user) in
if self.users.contains(user) {
return
}
if user.isMale == nil {
return
}
self.users.append(user)
self.setupCard(user: user)
print(user.username)
})
}
}
}
}
任何帮助将不胜感激!
解决方案
我还是不明白你的具体问题是什么?你也许可以使用这个:
@IBAction func selectGender(_ sender: UISegmentedControl) {
switch(sender.selectedSegmentIndex){
case 1: // male users
// update your cards to only list male users
self.users = self.users.filter { $0.isMale }
case 2: // female users
self.users = self.users.filter { !$0.isMale }
}
}
并将此操作连接到您的分段控件
推荐阅读
- linux - 由于 SSL/TLS 无法连接到 SQL Server
- typescript - 如何在 TypeORM 上保存与自定义实体(表)的多对多关系?
- google-cloud-platform - 谷歌云平台数据集无法在 VertexAI 中显示图像
- javascript - 如何在 React 中获得 key prop 警告的同时向我的组件添加密钥
- r - 尝试创建一个函数,当将数据帧输入其中时,将某些字符串的名称替换为不同的字符串
- python - 在不使用 Numpy 和 Pandas 的情况下从列表中计算平均值?
- r - 查找多个单词组合为一个的频率?
- asp.net - 在 IIS 中的母版页和内容页上使用脚本管理器
- jenkins - 如何引用 jenkins 共享库的特定分支
- c - C - 错误:malloc: *** 在 malloc_error_break 中设置断点以进行调试 (lldb)