我真的无法想出这个。 我有一个名为additionalMathViewController的VC,它向用户显示问题。如果用户回答错误,则将用户定向到另一个VC,该VC是additionalMathViewController的子类,名为incorrectViewController。
#import "ViewController.h"
@interface additionalmathViewController : ViewController{
int currentQuestion;
}
currentQuestion是一个计数器变量,可以增加用户正确提问的所有内容,并可以显示另一个问题。如果用户得到错误的问题,我想转到wrongViewController。这是我的代码
- (IBAction)SelectA:(id)sender {
if ([self.correctAns isEqualToString:@"A"]) {
[self showNextQuestion];
}
else{
[self performSegueWithIdentifier: @"segueToIncorrect" sender:nil];
}
}
如果用户选择A并且它是正确的则显示另一个问题。如果是错误的执行Segue到incorrectViewController
#import "additionalmathViewController.h"
@interface IncorrectImageViewController : additionalmathViewController
这里我想从additionalMathViewController
中获取currentQuestion的值incorrectImage.image = [UIImage imageNamed:left[currentQuestion]];
此当前图像不是additionalmathViewController的值
有什么想法吗?
答案 0 :(得分:0)
新视图控制器是一个新实例,因此不知道上一个实例对于某个值的含义。您需要在prepareForSegue
方法中将currentQuestion值传递给新控制器。
将currentQuestion设为属性
@interface IncorrectImageViewController
@property (copy) NSInteger currentQuestion;
..
然后在prepareForSegue中设置目标控制器上的值。
@implementation additionalmathViewController
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
IncorrectImageViewController *incorrect = [segue destinationViewController];
incorrect.currentQuestion = self.currentQuestion;
}