Программно добавьте UIButton в пользовательский ViewController с помощью раскадровки на месте

#ios #iphone #objective-c #xcode #uibutton

#iOS #iPhone #objective-c #xcode — код #uibutton

Вопрос:

Я успешно реализовал пошаговые инструкции, следуя инструкциям AppCoda по созданию UIPageViewController с использованием руководства по раскадровке. В конце примера UIPageControl создается в коде, и теперь я пытаюсь добавить UIButton таким же образом, программно.

Кнопка появляется, если она добавлена через раскадровку, но в остальном ни один из них не сработал для меня, когда (по отдельности) был добавлен в мой viewDidLoad :

 UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button setTitle:@"Show View" forState:UIControlStateNormal];
button.frame = CGRectMake(80.0, 210.0, 160.0, 40.0);
// [self.view addSubview:button];
// [self.view bringSubviewToFront:button];
// [self.view insertSubview:button atIndex:0];
// [self.view insertSubview:button atIndex:[self.view subviews].count   1];
// [self.view insertSubview:button aboveSubview:self.view];
// [self initButton:button];
 

Должно быть что-то относительно простое, чего мне не хватает. Должен ли я просто придерживаться Android?

Комментарии:

1. Просто раскомментируйте строку [self.view addSubview:button];, и это должно сработать.

2. Каждая из этих строк — это то, что я уже пробовал по отдельности, а затем прокомментировал, поскольку они не сработали. Извините, если я кого-то смутил.

3. Это должно сработать, возможно, у вас есть какой-то другой вид, добавленный поверх self.view, который наводит курсор на вашу кнопку.

4. Это было так. Позже в моем UIViewController я добавил UIPageViewController, который скрывал кнопку. Спасибо, что взглянули, я приму это как правильное, если вы захотите опубликовать в качестве ответа.

Ответ №1:

Просто раскомментируйте [self.view addSubview:button]; строку, и она должна работать. Если это не сработает, я полагаю, что у вас есть какое-то другое представление, добавленное поверх self.view, которое наводится на вашу кнопку.