Как я могу загрузить перо из UIViews в iOS 4? - PullRequest
0 голосов
/ 22 июня 2011

Как я могу загрузить перо из UIView в iOS 4?

У меня нет UIViewController, так как я добавляю это настраиваемое представление в родительское представление.

Я хочу инициализировать этот пользовательский вид из файла пера. Какой инициализатор я должен использовать? initWithFrame или initWithCoder?

Пока что я только назначил пользовательский класс в конструкторе интерфейсов. (См. Рис .: http://cl.ly/7pmj). Это необходимо? Если это так, то оно все еще не работает, почему этого недостаточно?

NB Я нашел этот связанный вопрос в StackOverflow. Однако это не объясняет, как инициализировать само представление с помощью пера.

Мне нужно настроить метод drawRect для этого представления, чтобы я не мог просто добавить подпредставление из файла пера. Мне нужно, чтобы само представление было инициализировано из файла пера.

спасибо

Ответы [ 2 ]

1 голос
/ 22 июня 2011

Да, необходимо изменить пользовательский класс представления в вашем файле пера.Убедитесь, что две вещи: 1. Перейдите в файл yourCustomView.nib, выберите представление в объекте, затем убедитесь, что пользовательский класс правильный в инспекторе идентификации.2. В файле youCustomView.m убедитесь, что у вас есть эта часть:

- (id)initWithCoder:(NSCoder*)coder 
{
    if ((self = [super initWithCoder:coder])) 
    {
       //add custom change after init from nib. 
    }
    return self;
}
0 голосов
/ 22 июня 2011

Используйте метод из соответствующего вопроса (NSBundle loadNibNamed) и убедитесь, что владельцем этого вызова является объект, имеющий IBOutlet для рассматриваемого представления.

Подключите этот iboutlet к представлению в конструкторе интерфейсов (вам нужно будет установить класс владельца в IB на класс владельца в вашем вызове load nib).

Перо загрузит представление в эту переменную iboutlet.

В .h файле:

IBOutlet UIView *myView;

в .m файле:

[[NSBundle mainBundle] loadNibNamed:@"viewToLoad" owner:self options:nil];
[someOtherView addSubView:myView];

Остальное в IB.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...