在我的应用程序中,所有 UIButton 对象的行为都很奇怪。似乎命中区域是原来的两倍。因此,当我单击一个按钮时,我实际上是在单击它旁边或下方的按钮。
我已经以编程方式以及使用 Interface Builder 创建了按钮,但两者的结果相同。
在我的应用程序中,我使用的是主题代理。但即使我禁用它,按钮的行为仍然很奇怪。
这是创建按钮的代码:
_btOpenContact = [UIButton buttonWithType:UIButtonTypeCustom];
_btOpenContact.frame = Rect(0, CGRectGetHeight(self.view.bounds) - 200, 100, 100);
[_btOpenContact addTarget:self action:@selector(navigateToContact) forControlEvents:UIControlEventTouchUpInside];
_btOpenContact.backgroundColor = RGB(233, 12, 24); resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 3, 0)] forState:UIControlStateNormal];
[self.view addSubview:_btOpenContact];
有人知道我做错了什么吗???提前致谢
更新
我向其中一个按钮添加了一个断点:
<UIButton: 0x1e0a1220; frame = (0 348; 100 100); opaque = NO; layer = <CALayer: 0x1e0a11e0>>
而它里面的CALayer:
<CALayer:0x1e0a11e0; position = CGPoint (50 398); bounds = CGRect (0 0; 100 100); delegate = <UIButton: 0x1e0a1220; frame = (0 348; 100 100); opaque = NO; layer = <CALayer: 0x1e0a11e0>>; backgroundColor = <CGColor 0x1e0a1300> [<CGColorSpace 0x1d53db80> (kCGColorSpaceDeviceRGB)] ( 0.913725 0.0470588 0.0941176 1 )>