我有一个自定义的UIButton,UILabel被添加为子视图.按钮仅在我触摸顶部边界约15个点时执行给定选择器.当我在该区域上方点击时,没有任何反应.
我发现它不是由于按钮和标签的错误创建造成的,因为在我将按钮向下移动约15 px后,它正常工作.
更新我忘了说位于UINavigationBar下面的按钮和按钮上半部分的1/3没有触摸事件.
带有4个按钮的视图位于NavigationBar下方.当触摸顶部的"篮球"时,BackButton会触摸事件,当触摸顶部的"Piano"时,则右边的BarButton(如果存在)触摸.如果不存在,则什么也没发生.
我没有在App文档中找到这个记录的功能.
我也发现这个话题与我的问题有关,但也没有答案.
我在导航栏的左侧有一个按钮.我在该按钮附近也有一个UIButton.
现在,当我单击导航栏下方的按钮时,在许多情况下,单击nab栏上的按钮.
知道为什么会这样吗?有什么建议 ?
谢谢.
图像:如果单击红色按钮内的任何位置,导航栏的左上角按钮仍会被按下.

导航栏按钮的代码:
UIButton *leftButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 25, 25)];
[leftButton setShowsTouchWhenHighlighted:NO];
[leftButton setImage:[UIImage imageNamed:@"deals.png"] forState:UIControlStateNormal];
[leftButton setImage:[UIImage imageNamed:@"deals_down.png"] forState:UIControlStateSelected];
[leftButton setImage:[UIImage imageNamed:@"deals_down.png"] forState:UIControlStateHighlighted];
[leftButton addTarget:self action:@selector(dealsButtonPressed:) forControlEvents:UIControlEventTouchDown || UIControlEventTouchUpInside];
self.navigationItem.leftBarButtonItem = [[[UIBarButtonItem alloc] initWithCustomView:leftButton] autorelease];
[leftButton release];
Run Code Online (Sandbox Code Playgroud)