前提・実現したいこと
マッチングアプリに近い機能をもつSNSアプリを作成しています。
ユーザーの性別がMaleであれば、フィードにFemaleのデータを表示
ユーザーの性別がFemaleであればその逆を表示する機能を実装中です。
発生している問題・エラーメッセージ
Firebaseにユーザーのデータ(名前や性別)をアップロードすることはできており、取得の方法もわかるのですが ログインしているユーザーの性別に応じて、取得するデータ変える(ログインしているユーザーが男性なら女性のデータを取得し、表示。逆もまたしかり) ことができず、苦戦しています。お力を貸していただけますと幸いです。 初投稿でありますので、情報の不足など、至らない点がありましたら遠慮なくご指摘ください。
以下のような形で、データをFirebaseにアップロードしています。
該当のソースコード
Swift
1 2 if Auth.auth().currentUser != nil { 3 4 guard let uid = Auth.auth().currentUser?.uid else { return } 5 6 //ログインしているユーザーのデータを取得。 7 Database.database().reference().child("Profile").child(uid).observeSingleEvent(of: .value) { (snapshot) in 8 9 guard let dictionary = snapshot.value as? Dictionary<String,String> else { return } 10 let snapshotValue = snapshot.value as! Dictionary<String,String> 11 let snapShotValue2 = snapshot.value as! Dictionary<String,[String]> 12 13 let genderValue = snapshotValue["gender"] 14 15 //ログインしているユーザーの性別によって、フィードに表示するユーザーの性別を変える。 16 if genderValue == "male" { 17 18 let homeDataRef = Database.database().reference() 19 homeDataRef.observe((.childAdded), with: { (snapshot) in 20 21 //この辺に何を書いたらいいかがわかりません。 22 23 24 25 }) 26 27 28 29 30 } else if genderValue == "female" { 31 32 } else { 33 return 34 } 35 36 } 37
試したこと
現在のユーザーデータを取得するところまではできました。
その後、データ取得系の記事をいくつか見ても参考になりそうなものが見つからず苦戦しています。
その他バージョンなどの情報
開発環境:
Xcode 10.1
Swift 4.2.1
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/06/03 06:56 編集
2019/06/03 07:11