我正在使用ResearchKit的stepResultForStepIdentifier
方法成功地用于其他问题类型,但无法找到正确的语法来预填充TextChoiceQuestion的结果。
下面是为ORKCatalog中的示例TextChoice问题设置结果的不成功尝试。对正确的方法有什么建议吗?
func stepResultForStepIdentifier(stepIdentifier: String) -> ORKStepResult? {
var stepResults = [ORKQuestionResult]()
if stepIdentifier == "TextChoiceQuestionStep" {
var questionDefault = ORKChoiceQuestionResult(identifier: stepIdentifier)
questionDefault.choiceAnswers?.append("choice_2")
stepResults.append(questionDefault)
}
var defaults = ORKStepResult(stepIdentifier: stepIdentifier, results: stepResults)
return defaults
}
choiceAnswers
阵列是nil
吗?当您执行questionDefault.choiceAnswers?.append
时,choiceAnswers
可能是nil
,因此这可能不执行任何操作。
改为questionDefault.choiceAnswers = ["choice_2"]