CloudFirebaseに入っているStringg型のデータを配列に格納したいです。
getSelectedQuiz関数内で配列に格納してprintで配列に入っていることは確認できたのですが、
viewDidLoad内でgetSelectedQuizを呼び出した後にpurint(quizArray)しても空の状態で表示されてしまいます。
どなたか解決方法をご教授ください
swift
1 2import UIKit 3import FSCalendar 4import CalculateCalendarLogic 5import FirebaseCore 6import FirebaseFirestore 7 8class GameViewController: UIViewController { 9 private var homeViewController: HomeViewController! 10 var quizArray = [String]() 11 var answerArray = [String]() 12 var commentaryArray = [String]() 13 var db: Firestore! 14 @IBOutlet weak var quiz: UITextView! 15 override func viewDidLoad() { 16 super.viewDidLoad() 17 let settings = FirestoreSettings() 18 Firestore.firestore().settings = settings 19 db = Firestore.firestore() 20 getSelectedQuiz() 21 print(quizArray) 22 } 23 24 // 追加した問題を取得 25 func getSelectedQuiz() { 26 var answer = "" 27 var commentary = "" 28 var quiz = "" 29 var events = "" 30 db.collection(HomeViewController.userName) 31 .getDocuments() { [self] (QuerySnapshot, err) in 32 if let err = err { 33 print("Error getting documents: (err)") 34 35 } else { 36 MotherScheduleViewController.countEvent = 0 37 for document in QuerySnapshot!.documents { 38 let sample: Dictionary = document.data() 39 answer = sample["answer"] as! String 40 commentary = sample["commentary"] as! String 41 quiz = sample["quiz"] as! String 42 self.answerArray.append(answer) 43 self.commentaryArray.append(commentary) 44 self.quizArray.append(quiz) 45 print(self.answerArray) 46 print(self.commentaryArray) 47 print(self.quizArray) 48 MotherScheduleViewController.documentID[MotherScheduleViewController.countEvent] = document.documentID 49 MotherScheduleViewController.schedule[MotherScheduleViewController.countEvent] = events 50 MotherScheduleViewController.countEvent+=1 51 } 52 } 53 } 54 } 55} 56
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/21 09:55
2020/10/21 12:08
2020/10/22 01:05
2020/10/22 01:17
2020/10/22 02:02