iOSアプリ開発 Swiftでクイズアプリを作ってみる 後編

2019年7月23日火曜日

iosアプリ開発 Swiftでクイズアプリを作ってみる

t f B! P L









目次

1. クイズ問題出題
2. ボタンが押された時のアクション
3.シュミレーターで確認









1. クイズ問題出題


var questionNumber = 0  
var correctAnswerNumber = 0

func question() {
        
        if questionNumber >= csvArray.count {
            
            let alert = UIAlertController(title: "漫画クイズ", message: "\(correctAnswerNumber)問正解", preferredStyle: .alert)
            
            let action = UIAlertAction(title: "終了", style: .default, handler: {
                
                (_) in self.dismiss(animated: true, completion: nil)
                
            })
            
            alert.addAction(action)
            
            present(alert, animated: true, completion: nil)
            
            return
            
        }
        
        let problemData = csvArray[questionNumber]
        
        label00.text = "第" + "\(questionNumber+1)問"
        
        label01.text = (problemData[0]as AnyObject as! String)
        
        let number = numberList()
        
        for i in 0...3 {
            
            button01[i].setTitle((problemData[number[i]]as AnyObject as! String), for: .normal)
            
        }

    }
        
        func numberList() -> [Int] {
            
            var list = [1,2,3,4]
            
            for _ in 1...10 {
                
                let i1 = Int(arc4random() % 4)
                
                let i2 = Int(arc4random() % 4)
                
                if i1 != i2 {
                    
                    list.swapAt(i1,i2)
                    
                }
            }
            
            return list
            
        }





override func viewDidLoad() {
        super.viewDidLoad()
csvToArray()        
question()
}
viewDidLoad()内にquestion()





2. ボタンが押された時のアクション

@IBAction func buttonCheck(_ sender: Any) {
        
        let answer = (sender as AnyObject).currentTitle!
        
        let questionData = csvArray[questionNumber]
        
        let answerNumber = questionData.index(of: answer!)
        
        if answerNumber == 1 {
            
            correctAnswerNumber += 1
            
            UIView.animate(withDuration: 1.0, animations: {
                
                UIApplication.shared.beginIgnoringInteractionEvents()
                
                self.currectAnswer.alpha = 1.0
                
            }) { (Bool) in
                
                self.currectAnswer.alpha = 0.0
                
                self.questionNumber += 1
                
                self.question()
                
                UIApplication.shared.endIgnoringInteractionEvents()
                
            }
 
        } else {
            
            UIView.animate(withDuration: 1.0, animations: {
                
                UIApplication.shared.beginIgnoringInteractionEvents()
                
                self.incorrectAnswer.alpha = 1.0
                
            }) { (Bool) in
                
                self.incorrectAnswer.alpha = 0.0
                
                self.questionNumber += 1
                
                self.question()
                
                UIApplication.shared.endIgnoringInteractionEvents()
  
      }  
    }
 }
}





3.シュミレーターで確認

シンプルなクイズアプリを作ってみました。

これから少しずつ、機能を追加していきたいと思います。



keep175
Illustrator,photoshop,アプリ開発の勉強中です。

アーカイブ

QooQ