У вас есть объект класса А? Вы должны ссылаться на это как-то. Пример:
A* a = [[A alloc] init];
gradeText.text=a.grade;
Но, похоже, ваш первый класс на самом деле является контроллером представления. В этом случае вы вообще не храните там никакой информации. Обычно вы вводите третий класс, называемый моделью, и просто вызываете его, чтобы дать вам оценку. Читайте, пожалуйста, схему MVC.
[Редактировать]
Я бы сохранил информацию о классе в свойстве в вашем UIApplicationDelegeate и прочитал бы оттуда - вам будет намного легче, чем то, что вы делаете сейчас. UIViewController не являются обычными объектами. Обычно объект представляет определенную вещь (скажем, объект TestFForStudentA типа TestResult) и может использоваться как таковой. Тем не менее, UIViewController связаны с пользовательским интерфейсом, который они контролируют (отсюда и их имя), и остаются активными, пока вы используете пользовательский интерфейс - но сложно отслеживать, когда вы переключаете представления и т. Д.
Итак, я бы предложил:
YourAppDelegate.h:
@property (retain) NSString* grade
YourAppDelegate.m:
@synthesize grade;
ViewController A, сохранить значение оценки делегату приложения, как только мы покинем представление
- (void) viewWillDisapper {
YourAppDelegate* appDelegate = (AppDelegate *) [[UIApplication sharedApplication] delegate];
appDelegate.grade = gradeLabel.text;
}
И, наконец, вы можете показать оценку в ViewController B:
-(IBAction)previewTheInfo {
YourAppDelegate* appDelegate = (AppDelegate *) [[UIApplication sharedApplication] delegate];
gradeText.text = appDelegate.grade;
}
Обратите внимание, что это просто для того, чтобы дать вам первую идею. То, что вы действительно хотите, это создать объект, который хранит Grade и переносить этот объект между контроллерами представления