导航上的自定义按钮

导航上的自定义按钮

问题描述:

我在rightBarBuuttonItem中创建了一个作为NavigationItem的自定义按钮。它运行良好,但是当我在按钮外部单击时,例如按钮的下方,它仍然有效。 这里是我的代码导航上的自定义按钮

fetchButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 30, 30)]; 
[fetchButton setImage:[UIImage imageNamed:@"quanse.png"] forState:UIControlStateNormal]; 
[fetchButton addTarget:self action:@selector(searchDataByColor) forControlEvents:UIControlEventTouchUpInside]; 
self.navigationItem.rightBarButtonItem =[[UIBarButtonItem alloc] initWithCustomView:fetchButton]; 

任何人谁可以告诉我,我能做些什么来解决这个错误?

+0

你测试的设备或模拟器? – skytz 2012-04-12 23:09:35

你所描述的实际上是UIButton的正常行为。实际的可触摸区域超出了按钮的可见边界。你可以在Apple自己的应用程序中看到这种行为。

通常,这是为用户提供方便,但如果你发现它在你的应用不可取的,有一个在此之前的问题可能的解决方法解决:

UINavigationItem Back Button touch area too large

+0

非常感谢! – 2012-04-14 00:41:54