这是我的代码:
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"startGame"]) {
UIViewController *controller = (UIViewController *)segue.destinationViewController;
controller.grade = self.currentGrade;
}
}
错误:
(!)Semantic Issue:
Property "grade" not found on object of type 'UIViewController *'
为什么会出现此错误?我将它定义为视图控制器的属性,并将其连接到故事板中。
答案 0 :(得分:1)
Possbile案例:检查您的UIViewController
自定义类。因为segue.destinationViewController;
将返回ViewController
与您的根视图绑定的对象。
在你的情况下:
UIViewController *controller = (UIViewController *)segue.destinationViewController;
controller.grade = self.currentGrade;
您访问grade
的{{1}}属性但未查找,这可能是导致此次崩溃的原因之一。
答案 1 :(得分:1)
将cast转换为viewController
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"startGame"]) {
YourViewController *controller = (YourViewController *)segue.destinationViewController;
controller.grade = self.currentGrade;
}
}
答案 2 :(得分:0)
等级是您的定制属性。 您可以自定义viewcontroller,并定义属性:grade。