Я добавляю пользовательскую кнопку/клавиатуру в свое приложение. До сих пор у меня есть подкласс UIImageView, который содержит анимацию, которая сдвигает ее снизу экрана, а затем возвращается вниз, когда пользователь больше не нуждается в ней. Однако у меня возникают проблемы с добавлением UIButtons в этот UIImageView.Проблема добавления subviews (UIButtons) в подкласс UIImageView
Поскольку это подкласс UIView, я пытаюсь добавить кнопки к моему виду с помощью метода initWithFrame :. (Метод slideDown добавленная анимация)
в моей UIImageView Подкласс, я добавил объект Ивар UIButton:
-(id)initWithFrame:(CGRect)frame {
if (self = [super initWithFrame: frame]) {
UIButton *button = [UIButton buttonWithType: UIButtonTypeRoundedRect];
button.frame = CGRectMake(16.0, 20.0, 50.0, 50.0);
[button setTitle: @"Go" forState: UIControlStateNormal];
[button addTarget: self action: @selector(slideDown) forControlEvents: UIControlEventTouchUpInside];
self.button1 = button;
[self addSubview: button1];
NSLog(@"Button added");
}
return self;
}
На мой взгляд контроллера, я экземпляр моего UIImageView Подкласс в - (пустоты) viewDidLoad: метод следующим образом:
-(void)viewDidLoad {
//other objects init'ed
ButtonPad *customPad = [[ButtonPad alloc] initWithImage: [UIImage imageNamed: @"ButtonPad.png"]];
customPad.frame = CGRectMake(0.0, 480.0, 320.0, 300.0);
self.buttonPad = customPad;
[self.view addSubview: buttonPad];
[customPad release];
[super viewDidLoad];
}
Мое текущее приложение позволяет просматривать слайд вверх и вниз по экрану без каких-либо проблем. Однако кнопка никогда не появляется. Я также попытался добавить кнопку к моему объекту buttonPad, создав экземпляр &, добавив его как subView в buttonPad в моем файле контроллера. Это сработало ... но это не позволило кнопке функционировать.
Мне интересно: A.) Является ли уместным добавлять кнопки или любые подзадача в этом отношении в метод UIView initWithFrame: или я должен добавлять эти подзоны в качестве подзаголовка к моей кнопке в виде файла Controller? B.) Поскольку я создаю пользовательскую кнопку/клавиатуру, я следую действительному подходу, используя обычный UIViewController, или я должен использовать что-то вроде modal view Controller? (У меня есть немного знаний о них.)
Я не думаю, что вы должны отпустить кнопку. + buttonWithType: должен предоставить вам автореализованный объект. –
хорошо catch. Я изменил это, но все еще не вижу кнопки. Я пробовал и UIButtonTypeRoundedRect & UIButtonTypeCustom безрезультатно. –