0

正如我的问题所说,我正在创建一个没有签名的ORKConsentReviewStep。但我想知道用户是否点击“同意”或“不同意”。

我试过了:

let reviewResult = result.stepResultForStepIdentifier("kReview")
let r = reviewResult?.resultForIdentifier("kReview") as! ORKChoiceQuestionResult
let choice = r.choiceAnswers?.first as! Double

但它会崩溃。

编辑:

我正在使用它从 SharingStep 中获得选择,并希望 ReviewStep 具有相同的功能:

let sharing = result.stepResultForStepIdentifier("kSharingStep") 
let s = sharing?.resultForIdentifier("kSharingStep") as! ORKChoiceQuestionResult 
let theChoice = s.choiceAnswers!.first as! Double
4

2 回答 2

2

实际上,这看起来像是一个疏忽。由于我们所有的用户都至少使用过requiresName,而且通常也使用过requiresSignatureImage,因此他们能够通过是否存在姓名或签名来确定用户是否默许。

请注意,ORKConsentReviewStep不是问题步骤,因此它不包含问题结果。其结果的孩子是ORKConsentSignatureResult记录获得的姓名和/或签名的文件。

应该发生的是,如果用户不同意,评论结果应该有一个标志来明确指出这一点。

我已经提交了#244

于 2015-06-01T17:39:26.567 回答
0

在查看文件并尝试创建自己的委托时,我发现

@protocol ORKConsentReviewControllerDelegate <NSObject>
- (void)consentReviewControllerDidAcknowledge:(ORKConsentReviewController *)consentReviewController;
- (void)consentReviewControllerDidCancel:(ORKConsentReviewController *)consentReviewController;
@end

所以这是我自己问题的答案:)

于 2015-06-01T11:56:18.137 回答