Получение объектов, таких как кнопка из вида. IOS - PullRequest
1 голос
/ 04 августа 2011

Я создал кнопку в своем файле cover.h для первого просмотра

#import <UIKit/UIKit.h>


@interface cover : UIViewController 
{

     IBOutlet UIButton *Enter;

}

@property (nonatomic, retain) UIButton *Enter;
-(IBAction)buttonpressed:(id)sender;

@end

и связал ее с фактической кнопкой в ​​построителе inteface, выбрав «Владелец файла» в крошечном окошке, которое дает вам выборвладельца файла, первого ответчика и вида

Затем я перешел к файлу cover.m и добавил следующий код

-(IBAction)buttonpressed:(id)sender
{

      [[NSBundle mainBundle] loadNibNamed:@"nextView" owner:self options:nil];
      NSLog(@"pressed");

}

SO, когда я иду в nextView.xib и изменяю nextView.m и nextView.h и получить доступ к его кнопкам и сделать то же самое, что я сделал для cover.xib cover.m и cover.h, он не работает должным образом.

Что происходит, когда я нажимаю клавишу вводаКнопка в представлении обложки закрывает приложение.Этого не произойдет, пока я не подключу кнопку к функции и к розетке (имеется в виду, что когда он просто переключал представления, а второй не делал ничего, что могло бы работать)

Спасибо за любую помощь, которую вы можете оказать.Извините, если я не дал достаточно информации, вроде как новичок в этом, но, как только узнаю больше информации, которую я должен был иметь, я добавлю ее.

Спасибо

Редактировать 1:

Я не заметил нигде, где говорилось, что произошла ошибка или что-то в этом роде.Он построен правильно

1 Ответ

1 голос
/ 04 августа 2011
  • Условно использовать заглавные буквы в именах классов.Я бы предложил CoverViewController.Это делает более очевидным то, на что мы смотрим при чтении вашего кода.

Каково ваше намерение здесь?Чтобы показать перо после кончика контента?

Является ли "владельцем файлов" каждого кончика CoverViewController?

Что вы на самом деле сделали (катастрофически) перезагрузили представления для существующего контроллера,Это не закончится хорошо.

Что вы хотите сделать, это создать еще один экземпляр того же класса:

-(IBAction)buttonpressed:(id)sender {
CoverViewController nextController = [[CoverViewController alloc] initWithNibName:@"nextView"];
[navigationController pushViewController:nextController animated:NO];
}

Если вы не используете контроллер навигации, вы, вероятно, захотите,Прочтите Руководство по программированию контроллера View .

...