小问题。我的plist看起来像:
在屏幕上有两个按钮(A,B)可触发详细视图。我正在尝试检查用户做出的选择:
if ([self.question.answers objectAtIndex:0])//answer A?
{
//do some stuff
}
else if ([self.question.answers objectAtIndex:1])//Answer B?
{
//do some other stuff
}
任何洞察为什么这不起作用或更好的方法来区分将是伟大的!目前按钮A和B都显示按钮A的视图控制器... 谢谢!
答案 0 :(得分:1)
您当前的if语句与此相同:
if ([self.question.answers objectAtIndex:0] != nil)//answer A?
{
//do some stuff
}
else if ([self.question.answers objectAtIndex:1] != nil)//Answer B?
{
//do some other stuff
}
只要您的answers
数组具有第一个对象,这将始终采用第一个分支。
当用户点击按钮A或B时,应将相应的答案指定为详细视图控制器的属性。然后在详细视图控制器中,您可以检查这样的内容,其中selectedAnswer
是详细视图控制器的属性:
if (self.selectedAnswer == [self.question.answers objectAtIndex:0])//answer A?
{
//do some stuff
}
else if (self.selectedAnswer == [self.question.answers objectAtIndex:1])//Answer B?
{
//do some other stuff
}