UIButton вылетает приложение - PullRequest
1 голос
/ 01 февраля 2012

Добавлено UIButton в приложение

UIButton *playButton = [UIButton buttonWithType:UIButtonTypeCustom];

[playButton addTarget:self action:@selector(play:) forControlEvents:UIControlEventTouchUpInside];

UIImage *image = [UIImage imageNamed:@"play.png"];

[playButton setImage:image forState:UIControlStateNormal];

при запуске приложения происходит сбой и появляется сообщение UIButtonView unrecognized selector

сделал исключение точка останова

Обнаружено, что он падает на

[toolbar setItems:toolbarItems];

Я думаю, что я не добавляю UIButton правильно к toolbar

//Add buttons to the array

NSArray *toolbarItems = [NSArray arrayWithObjects: settingsButton, flexItem, rewind, flexItem, playButton, flexItem, pause, flexItem, modalBarButtonItem, nil];

 [toolbar setItems:toolbarItems];

Anyideas, чтобы исправить это.

Спасибо за помощь.

Ответы [ 2 ]

1 голос
/ 01 февраля 2012

Проблема в том, что вы не можете напрямую вставить UIButton в UIToolBar. Вы должны инкапсулировать UIButton в виде UIBarButtonItem, а затем вставить свой пользовательский UIBarButtonItem в UIToolBar. Если вам не нужен пользовательский внешний вид или функциональность, возможно, вы захотите использовать стандартный UIBarButtonItem, потому что он выглядит хорошо без особой работы с вашей стороны.

См. Добавление UILabel к UIToolbar для примера.

0 голосов
/ 01 февраля 2012

UIToolbar содержит экземпляры UIBarButtonItem, а не UIButton.Если вам просто нужно пользовательское изображение, попробуйте:

UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithImage:image style:UIBarButtonItemStylePlain target:self action:@selector(play:)];

// Build your array and setItems: using "item" among other objects

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