如何点击 NavigationBar 的 UIView 按钮?

Posted

技术标签:

【中文标题】如何点击 NavigationBar 的 UIView 按钮?【英文标题】:How to click UIView Button of NavigationBar? 【发布时间】:2010-02-09 02:17:00 【问题描述】:
UIView *leftButtonItemView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 30, 30)];

UIImageView *addButtonEmptyImage = [[UIImageView alloc]init];
[addButtonEmptyImage setImage:[UIImage imageNamed:@"black.png"]];
addButtonEmptyImage.frame = CGRectMake(15,0,20,30);

[leftButtonItemView addSubview:addButtonEmptyImage];
[addButtonEmptyImage release];

UIImageView *correctButtonEmptyImage = [[UIImageView alloc]init];
[correctButtonEmptyImage setImage:[UIImage imageNamed:@"black.png"]];
correctButtonEmptyImage.frame = CGRectMake(50,0,20,30);

[leftButtonItemView addSubview:correctButtonEmptyImage];
[correctButtonEmptyImage release];

UIBarButtonItem *leftButtonItem = [[UIBarButtonItem alloc] initWithCustomView:leftButtonItemView];
[leftButtonItemView release];

self.navigationItem.leftBarButtonItem = leftButtonItem;
[leftButtonItem release];

这是我的应用程序的一些来源。我知道 NavigationItem 有两个按钮(左和右)。但我希望做三个按钮。所以我制作了一个使用 navigationItem 的按钮和另一个使用空白视图的按钮。我想单击正确的ButtonEmptyImage。但这是在leftButtonItemView 中。即,如果我单击包含两个图像的视图,我会看到 leftButtonItemView 不正确的ButtonEmptyImage。帮我。谢谢

【问题讨论】:

【参考方案1】:

使用 UIButtons 而不是 UIImageViews 作为容器视图 (leftButtonItemView) 的子视图。使用addTarget:action:forControlEvents: 将操作方法​​分配给按钮。

PS:请不要在您的问题中只说“它不起作用”。更具体地告诉我们哪些有效,哪些无效。否则我们将无法为您提供帮助。

【讨论】:

哦,谢谢。我很抱歉。

以上是关于如何点击 NavigationBar 的 UIView 按钮?的主要内容,如果未能解决你的问题,请参考以下文章

在 Swift 中使 NavigationBar 子视图可点击

NavigationBar上的back按钮点击后触发的是哪个函数

IOS--- NavigationBar标题按钮

NavigationBar隐藏

如何重复我的本地通知声音,直到我点击其“查看”按钮?

UISearchController 出现在 NavigationBar 后面