В шаблоне утилит MainViewController
(контроллер вида на лицевой стороне) создает FlipsideViewController
(контроллер вида на тыльной стороне) в методе showInfo:
.Вы можете передать любые данные, которые вам нравятся, в конструктор FlipsideViewContrller
(конечно, при условии, что вы измените конструктор так, чтобы он принимал данные).
В качестве альтернативы, вы можете определить некоторые свойства в FlipsideViewController
.После создания объекта (снова в showInfo:
) вы можете установить эти свойства с данными, которые хотите передать.
Отредактировано в соответствии с комментарием @ Сэма:
В FlipsideViewController.h
выопределите свойство для хранения данных, которые вы хотите показать.Здесь я делаю это NSString
, но это может быть что угодно.
@property (nonatomic, retain) NSString *someDataToShow;
В MainViewController.m
, после создания FlipsideViewController
, вы установите свойство.Обратите внимание, это предполагает, что у вас есть метод computeDataToPassToFlipside
, определенный в MainViewController
, который возвращает NSString
.
- (IBAction)showInfo:(id)sender
{
FlipsideViewController *controller = [[FlipsideViewController alloc] initWithNibName:@"FlipsideView" bundle:nil];
controller.delegate = self;
controller.someDataToShow = [self computeDataToPassToFlipside];
// ...
}
Наконец, в FlipsideViewController.m
вам нужно что-то сделать с данными, которые вы передалинедвижимость.Например, предположим, у вас есть UILabel
с именем myLabel
, для которого вы хотите отобразить свойство NSString
.Я собираюсь предположить, что UILabel правильно включен и подключен к IBOutlet
с помощью Interface Builder.
- (void)viewWillAppear:(BOOL)animated
{
myLabel.text = self.someDataToShow;
}