友達を追加します。しかし、私がをクリックするたびにaddFriendボタンを押すと、thread 1
のブレークポイントが得られます。 11db
ではなく、それ以上のエラー情報はありません。 "otherUser"のNSDictionary
にnoneの値があることがわかりました。それはすべてがうまくいかない理由なのです。しかし、私はそれがなぜか分からない。同じNSDictionary
のうち、ユーザー名とプロフィールのPicが表示されます。なぜそれは無名ですか?NSDictionaryには値がありません
var otherUser: NSDictionary?
override func viewDidLoad() {
super.viewDidLoad()
databaseRef.child("user").child(self.otherUser?["uid"] as! String).observe(.value, with: { (snapshot) in
let uid = self.otherUser?["uid"] as! String
self.otherUser = snapshot.value as? NSDictionary
self.otherUser?.setValue(uid, forKey: "uid")
}) { (error) in
print(error.localizedDescription)
}
}
@IBAction func addFriend(_ sender: Any) {
if self.befreunden.titleLabel?.text == "Als Freund hinzufügen" {
let friendRef = "befreundet/\(self.loggedinUSerData?["uid"] as! String)/\(self.otherUser?["uid"] as! String)"
let BefreundenData = ["username":self.otherUser?["username"] as? String,
"ProfilePic":self.otherUser?["urltoImage"] as! String!]
let childUpdats = [friendRef:BefreundenData]
databaseRef.updateChildValues(childUpdats)
}else {
FreundeAnzahl = self.otherUser?["AnzahlFreunde"] as! Int + 1
}
}
編集:
私はちょうどotherUserのNSDictionaryのは、のviewDidLoad内で必要なすべての値を持っていること、を発見しました。しかし、addFriend関数でotherUserのuidを呼び出すとすぐに、nilの値が返されます。 どうしてですか?
どの行にコードが停止していますか? – KKRocks
これをチェックしてくださいhttp://stackoverflow.com/questions/25750595/error-thread-1-breakpoint-1-1 –
let FriendRefで停止します。 – AlexVilla147