Я пытаюсь вызвать действие (changeMainNumber) в главном контроллере представления из модального контроллера. Действие должно изменить UILabel mainNumber до 2. В ViewController.h, у меня есть:XCode: действие вызова в главном представлении из модального вида
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController {
IBOutlet UILabel *mainNumber;
}
@property (nonatomic, retain) UILabel *mainNumber;
-(IBAction)changeMainNumber;
ViewController.m:
#import "ViewController.h"
@implementation ViewController
@synthesize mainNumber;
- (IBAction)changeMainNumber:(id)sender {
mainNumber.text = @"2";
}
Следующий контроллер представления является модальный контроллер представления. ModalViewController.h:
#import <UIKit/UIKit.h>
@class ViewController;
@interface ModalViewController : UIViewController {
}
-(IBAction)callChangeMainNumber:(id)sender;
и ModalViewController.m:
#import "ModalViewController.h"
@implementation ModalViewController
- (IBAction)callChangeMainNumber {
ViewController *viewController = [[ViewController alloc] init];
[viewController changeMainNumber];
}
С помощью этой установки приложение сохраняет сбой, когда callChangeMainNumber называется, и я не могу понять, что это неправильно. Любая помощь, которую вы можете предоставить, оценена!
разбивающихся? Что такое сообщение? Где он падает? Вы знаете, что вы создаете новый ViewController внутри callChangeMainNumber и меняете его? – fbernardo
Спасибо за ответ. Приложение сбой, когда выполняется действие callChangeMainNumber (кнопка round rect). Я точно не знаю, что делать, так что будет правильным способом вызвать changeMainNumber с callChangeMainNumber? – potato
Что вы имеете в виду при запуске callChangeMainNumber? Какая линия? Правильный способ - передать объект ViewController объекту ModalViewController, чтобы последний мог отправить сообщение changeMainNumber первому объекту. Понял? – fbernardo