Ios 导航栏按钮单击下面的区域时,单击事件触发。
我有自定义视图的导航栏作为右栏按钮项。自定义视图中有两个按钮。但当我触摸右侧导航栏下方的区域时,它会触发按钮触摸事件。我已经检查了按钮的框架,并通过改变背景颜色来查看所有设置是否完美。 我检查了默认的iOS应用程序,如时钟、日历、设置、笔记等,它们都有相同的行为。触摸屏幕截图中的红色矩形(默认iOS日历应用程序)会触发按钮的触摸事件,我的应用程序也会发生同样的情况 这是代码Ios 导航栏按钮单击下面的区域时,单击事件触发。,ios,cocoa-touch,Ios,Cocoa Touch,我有自定义视图的导航栏作为右栏按钮项。自定义视图中有两个按钮。但当我触摸右侧导航栏下方的区域时,它会触发按钮触摸事件。我已经检查了按钮的框架,并通过改变背景颜色来查看所有设置是否完美。 我检查了默认的iOS应用程序,如时钟、日历、设置、笔记等,它们都有相同的行为。触摸屏幕截图中的红色矩形(默认iOS日历应用程序)会触发按钮的触摸事件,我的应用程序也会发生同样的情况 这是代码 UIView* navigationButtonsView = [[UIView alloc] initWithFrame
UIView* navigationButtonsView = [[UIView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 100.0f, 44.0f)];
UIButton *p = [UIButton buttonWithType:UIButtonTypeCustom];
[p setImage:[UIImage imageNamed:@"PBtn.png"] forState:UIControlStateNormal];
[p addTarget:self action:@selector(PButtonPushed:) forControlEvents:UIControlEventTouchUpInside];
[p setFrame:CGRectMake(43, 0, 57, 44)];
[navigationButtonsView addSubview:p];
UIButton *o = [UIButton buttonWithType:UIButtonTypeCustom];
[o addTarget:self action:@selector(oButtonPushed:) forControlEvents:UIControlEventTouchUpInside];
[o setFrame:CGRectMake(0, 0, 38, 44)];
[o setImage:[UIImage imageNamed:@"O.png"] forState:UIControlStateNormal];
[navigationButtonsView addSubview:o];
UIBarButtonItem *barItem = [[UIBarButtonItem alloc] initWithCustomView:navigationButtonsView];
[musicVC.navigationItem setRightBarButtonItem: barItem animated:NO];
如何更改导航栏按钮的默认iOS行为?因为我在这些按钮的正下方有一些UI,它的顶部区域没有响应。
提前感谢..这是正常行为-两个原因: