UIbutton frame 和 addtarget 不同
Posted
技术标签:
【中文标题】UIbutton frame 和 addtarget 不同【英文标题】:UIbutton frame and addtarget is different 【发布时间】:2013-07-03 07:00:41 【问题描述】:我制作自定义视图并在视图上添加创建按钮。 在视图控制器中
MyCustomView *customView = [[MyCustomView alloc] init];
[customView.button addTarget:self action:@selector(goodTry) forControlEvents:UIControlEventTouchUpInside];
但是,如果我在框架中触摸我的按钮,则只有中线下方是可触摸的,中线上方 addTarget 不起作用。
----
|\ |
|*\ |
|**\ |
|***\|
----
-- 这是我的按钮框架。 ***
在哪里 - 它正在工作。空的地方不起作用。
感谢您的帮助。
【问题讨论】:
绘图是customView还是按钮?大小一样吗? @Rajneesh071 这是一个UIControlEvent
,他必须在这里添加,而不是UIControlState
,它只会抛出一个错误或至少是一个警告。如果其他一切都正确完成,UIControlEventTouchUpInside
应该可以工作。如何在 customView 上创建按钮?
Avi,绘图用于按钮。 CustomView 的大小和我的按钮不同
【参考方案1】:
为按钮添加背景颜色并检查按钮的定位方式和位置。如果它位于您的自定义视图之外,您将无法对该外部部分执行操作。
【讨论】:
【参考方案2】:检查您的按钮框架是否位于父框架内。父框架外的按钮区域冻结并且不响应触摸事件。在按钮上设置clipToBounds = YES;
进行测试。
【讨论】:
以上是关于UIbutton frame 和 addtarget 不同的主要内容,如果未能解决你的问题,请参考以下文章