私はソーシャルメディアアプリケーションを完成させていましたが、アプリケーションの起動プロセス中に私のユーザーの "username"に関して一貫して同じエラーが発生しています次のView Controllerが起動しなくなり、クラッシュしてEXC_BAD_INSTRUCTION
と表示されます)。ソーシャルネットワークアプリで返品行にエラーが発生しました
私はプロフィール画像でそれを持っていたので、それはデータベースの問題かもしれないと思っていましたが、ユーザ名はデータベースに登録され、電子メールとパスワードを持つユーザーとして登録されています。
エラーがであるセクションのコード:
import Foundation
import Firebase
import FirebaseDatabase
class Post {
private var _username: String!
private var _userImg: String!
private var _postImg: String!
private var _likes: Int!
private var _postKey: String!
private var _postRef: DatabaseReference!
var username: String
{
return _username
}
var userImg: String
{
return _userImg
}
var postImg: String {
get {
return _postImg
} set {
_postImg = newValue
}
}
var likes: Int {
return _likes
}
var postKey: String {
return _postKey
}
init(imgURl: String, likes: Int, username: String, userImg: String) {
_likes = likes
_postImg = imgURl
_username = username
_userImg = userImg
}
init(postKey: String, postData: Dictionary<String, AnyObject>){
_postKey = postKey
if let username = postData["username"] as? String {
_username = username
}
if let userImg = postData["userImg"] as? String {
_userImg = userImg
}
if let postImg = postData["imageUrl"] as? String{
_postImg = postImg
}
if let likes = postData["likes"] as? Int {
_likes = likes
}
_postRef = Database.database().reference().child("posts").child(_postKey)
}
func adjustLikes(addLikes: Bool) {
if addLikes {
_likes = likes + 1
} else {
_likes = likes - 1
}
_postRef.child("likes").setValue(_likes)
}
}
エラーが発生した行:私は本当に問題は何ができるか困惑しています
return _username
。私はすべてのIBOutletsを見て、新しいユーザーを削除して追加しました。助けていただければ幸いです。
ユーザーがサインアップするときに、ユーザー名に値を保持するためのコードが既に用意されています。 Firebaseでは、入力したユーザー名で作成したユーザーが表示されます。 – user8480321
@ user8480321計算されたプロパティの前に値を出力していることをブレークポイントと印刷ステートメントでチェックしましたか? –
あなたは、値がゼロでないことを保証するために書く必要のあるコードを表示してください。私は今非常に失われています – user8480321