ios - UINavigationBar Touch

标签 ios iphone cocoa-touch uikit uinavigationbar

我想在用户点击我的其中一个 View 的导航栏标题时触发触摸事件。

对于是否可以访问 UINavigationBar 的标题 View 以便将触摸事件连接到它,我有点不知所措。

这可能吗?

最佳答案

您可以将手势识别器添加到导航 Controller 的标题上。 我发现在 navigationBar subview 中,标题是索引为 1 的那个,左侧按钮的索引为 0,右侧按钮的索引为 2。

UITapGestureRecognizer *navSingleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(navSingleTap)];
navSingleTap.numberOfTapsRequired = 1;
[[self.navigationController.navigationBar.subviews objectAtIndex:1] setUserInteractionEnabled:YES];
[[self.navigationController.navigationBar.subviews objectAtIndex:1] addGestureRecognizer:navSingleTap];

然后在您的实现中的某处实现以下内容。

-(void)navSingleTap

因此您可以将其用于单击,或者您可以在该标题上实现您想要的任何手势识别器。

关于ios - UINavigationBar Touch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2077025/

相关文章:

ios - 无法更新 childAutoId 节点中的节点值来更新字典值

ios - 观看连接 session 问题

iphone - 在 MKMapView 上对 Sprite 进行动画处理

iphone - 从 CGAffineTransform 中查找比例值

ios - 返回不同值的 NSCalendar 组件

iphone - 如何检测 UITableView 中某个单元格的双击?

ios - UITextView 在 iOS 7 上绘制不正确

objective-c - iOS 表格 View 中有很多单元格

iphone - 如何调整 uitableview 单元格图像的大小?

iphone - 在 viewDidUnload 中设置为 nil,但在 dealloc 中释放