サインイン/アウトのボタンを持つサインイン/アウトアプリを作成しています。たとえば、サインインしている場合は、「サインアウト」と表示されます。彼らがサインインしているかどうかについての情報はすべてFirebaseから得られます。ref.observeSingleEventOfTypeのfirebase&swiftコードが実行されていません
とにかく、私はbool now_inに値を与えようとしています... ref.observeSingleEventOfType(.Value ...コードブロックですが、プログラムは決してそこに入りません。 )それは、プログラムを停止したことがない
私はあなたが提供できるものは非常に参考になるFirebaseとスウィフト、さらにはStackOverflowのに非常に新しいんだありがとう
func refresh_sign_in_out_button() {
var button_title = "SIGN IN/OUT"
if let op_user = user {
var currently_in: Bool?
op_user.user_ref!.observeSingleEventOfType(.Value, withBlock: { snapshot in
currently_in = (snapshot.childSnapshotForPath("current_status").value as! String == "IN")
print(currently_in)
})
if !currently_in! {
button_title = "SIGN IN"
type_of_log_in.hidden = false
sign_in_out_button.setTitleColor(UIColor(red: 0.349, green: 0.89, blue: 0.0, alpha: 1.0), forState: UIControlState.Normal)
} else {
button_title = "SIGN OUT"
op_user.user_log_in_type = type_of_log_in_label.text
type_of_log_in.hidden = true
sign_in_out_button.setTitleColor(UIColor(red: 0.922, green: 0.0, blue: 0.231, alpha: 1.0), forState: UIControlState.Normal)
}
} else {
button_title = "SIGN IN"
type_of_log_in.hidden = false
sign_in_out_button.setTitleColor(UIColor(red: 0.349, green: 0.89, blue: 0.0, alpha: 1.0), forState: UIControlState.Normal)
}
私のプロジェクトはここにあります。。!: Sign In/Out App
ファイアベースstru cture:
{
"mentors" : {
"Ash Dreyer" : {
"current_status" : "IN",
"logins" : [ null, {
"sign_in_time" : "2016-05-15 18:44:59 +0000"
} ],
"num_of_logins" : 0,
"total_hours" : 0
},
"Donald Pinckney" : {
"current_status" : "OUT",
"num_of_logins" : 0,
"total_hours" : 0
},
"Jasmine Zhou" : {
"current_status" : "OUT",
"num_of_logins" : 0,
"total_hours" : 0
},
"Michael Corsetto" : {
"current_status" : "OUT",
"num_of_logins" : 0,
"total_hours" : 0
}
},
"students" : {
"Bryton Moeller" : {
"current_status" : "OUT",
"num_of_logins" : 0,
"total_hours" : 0
},
"Kelly Ostrom" : {
"current_status" : "OUT",
"num_of_logins" : 0,
"total_hours" : 0
},
"Kyle Stachowicz" : {
"current_status" : "OUT",
"num_of_logins" : 0,
"total_hours" : 0
},
"Wesley Aptekar-Cassels" : {
"current_status" : "IN",
"logins" : [ null, {
"sign_in_time" : "2016-05-15 16:14:11 +0000"
} ],
"num_of_logins" : 0,
"total_hours" : 0
}
}
}
データは1年間のみ必要とされているので、私は学生や指導者のためのユーザーIDを持っていないし、我々は新しいデータに置き換えます。
「var currently_in:Bool」という行が表示されますか?あなたはゼロ値を取得しようとしている参照ですか? – PyPiePi