Я вижу, что здесь есть похожие проблемы, но ни одно из решений не работает для меня. Вот так:iPhone UIButton addTarget: action: forControlEvents: не работает
У меня есть экземпляр UIButton внутри фрейма UIView, который расположен в пределах другого кадра UIView, который позиционируется в главном окне UIView. К оглавлению:
UIWindow
--> UIView (searchView)
--> UISearchBar (findField)
--> UIView (prevButtonView)
--> UIButton (prevButton)
--> UIView (nextButtonView)
--> UIButton (nextButton)
До сих пор так хорошо: все выложено, как я хочу. Тем не менее, кнопки не принимают пользовательский ввод любого типа. Я использую метод addTarget UIButton: Действие: forControlEvents: и дать вам представление о том, что я делаю, вот мой код nextButton:
nextButton = [UIButton buttonWithType:UIButtonTypeCustom];
[nextButton setImage:[UIImage imageNamed:@"find_next_on.png"] forState:UIControlStateNormal];
[nextButton setImage:[UIImage imageNamed:@"find_next_off.png"] forState:UIControlStateDisabled];
[nextButton setImage:[UIImage imageNamed:@"find_next_off.png"] forState:UIControlStateHighlighted];
[nextButton addTarget:self action:@selector(nextResult:) forControlEvents:UIControlEventTouchUpInside];
Метод NextResult: никогда не вызывается, состояние из кнопка не меняется при прикосновении, и нет ничего чертвого, что я мог сделать, чтобы заставить ее работать. Я предполагаю, что есть проблема со всеми этими уровнями просмотров: возможно, что-то сидит поверх моей кнопки, но я не уверен, что это может быть.
В интересах информационной перегрузки я нашел немного кода, который бы распечатывал всю мою информацию о просмотре. Это то, что я получаю за всю свою иерархию представления:
UIWindow
{{0, 0}, {320, 480}}
UILayoutContainerView
{{0, 0}, {320, 480}}
UINavigationTransitionView
{{0, 0}, {320, 480}}
UIViewControllerWrapperView
{{0, 64}, {320, 416}}
UIView
{{0, 0}, {320, 416}}
UIWebView
{{0, 44}, {320, 416}}
UIScroller
{{0, 0}, {320, 416}}
UIImageView
{{0, 0}, {54, 54}}
UIImageView
{{0, 0}, {54, 54}}
UIImageView
{{0, 0}, {54, 54}}
UIImageView
{{0, 0}, {54, 54}}
UIImageView
{{-14.5, 14.5}, {30, 1}}
UIImageView
{{-14.5, 14.5}, {30, 1}}
UIImageView
{{0, 0}, {1, 30}}
UIImageView
{{0, 0}, {1, 30}}
UIImageView
{{0, 430}, {320, 30}}
UIImageView
{{0, 0}, {320, 30}}
UIWebDocumentView
{{0, 0}, {320, 21291}}
UIView
{{0, 0}, {320, 44}}
UISearchBar
{{10, 8}, {240, 30}}
UISearchBarBackground
{{0, 0}, {240, 30}}
UISearchBarTextField
{{5, -2}, {230, 31}}
UITextFieldBorderView
{{0, 0}, {230, 31}}
UIPushButton
{{205, 6}, {19, 19}}
UIImageView
{{10, 8}, {15, 15}}
UILabel
{{30, 7}, {163, 18}}
UIView
{{290, 15}, {23, 23}}
UIButton
{{0, 0}, {0, 0}}
UIImageView
{{-12, -12}, {23, 23}}
UIView
{{260, 15}, {23, 23}}
UIButton
{{0, 0}, {0, 0}}
UIImageView
{{-12, -12}, {23, 23}}
UINavigationBar
{{0, 20}, {320, 44}}
UINavigationButton
{{267, 7}, {48, 30}}
UIImageView
{{0, 0}, {48, 30}}
UIButtonLabel
{{11, 7}, {26, 15}}
UINavigationItemView
{{79, 8}, {180, 27}}
UINavigationItemButtonView
{{5, 7}, {66, 30}}
MBProgressHUD
{{0, 0}, {320, 480}}
UIActivityIndicatorView
{{141, 206}, {37, 37}}
UILabel
{{117, 247}, {86, 27}}
Соответствующая часть отмечено выше в разделе UINavigationBar.
У кого-нибудь есть предложения? Я в полном порядке.
Спасибо за чтение.
Aaron.