#16 心理測驗或問卷 App

作業目的: 熟練資料傳遞的技巧。

製作一個多頁面的心理測驗或問卷 App。以心理測驗為例,回答完所有問題後,顯示改變一生的結果頁面,決定你是好人還是壞人 !

  • 做法1: 使用 IBSegueAction 傳資料。
  • 做法2: 使用 UIViewController 的 prepare 傳資料。

Apple 官方範例

Develop in Swift Fundamentals 裡 Unit 3 的 Guided Project: Personality Quiz。建議第一次先自己練習,第二次再參考 Apple 的寫法。

解答下載。

ps: Apple 範例用到 reduce & sorted,如果還沒學過, 可先參考以下寫法。

func calculatePersonalityResult() {
var frequencyOfAnswers = [AnimalType: Int]()

for response in responses {
frequencyOfAnswers[response.type, default: 0] += 1
}
var maxFrequencyOfAnswer = frequencyOfAnswers.first!
for frequencyOfAnswer in frequencyOfAnswers {
if frequencyOfAnswer.value > maxFrequencyOfAnswer.value {
maxFrequencyOfAnswer = frequencyOfAnswer
}
}
resultAnswerLabel.text = "You are a \(maxFrequencyOfAnswer.key.rawValue)!"
resultDefinitionLabel.text = maxFrequencyOfAnswer.key.definition
}

作品集

--

--

彼得潘的 iOS App Neverland
彼得潘的 100 道 Swift iOS App 謎題

彼得潘的iOS App程式設計入門,文組生的iOS App程式設計入門講師,彼得潘的 Swift 程式設計入門,App程式設計入門作者,http://apppeterpan.strikingly.com