在ViewDidLoad 里添加UIButton的点击事件,不能触发。

在ViewDidLoad 里添加UIButton的点击事件,不能触发。


在手工编写一些代码之后,在控制器的View中添加一个Button,但是当我点击的时候居然拦截不到按钮的点击事件,郁闷至极。查看代码发现:与self.view 的子控件的添加顺序有关,如果 button 先添加,之后再添加其他的控件,就可能拦截button 的事件传递,导致按钮没有响应----responser。

解决措施就是查看自己的额,子控件添加顺序,是否会产生不想要的响应者链条,不该相应的居然响应,然后其他的本应该响应的,就得不到响应机会。

[self.view addSubview:contentView];

   

[button addTarget:selfaction:@selector(sendSuggestion)forControlEvents:UIControlEventTouchUpInside];

//    button.enabled = YES;

 if (self.view.userInteractionEnabled == NO) self.view.userInteractionEnabled =YES;

[contentView addSubview:button];

//    [self.view addSubview:contentView];

其他的不能响应的原因:forControlEvents 

1.

麻烦 forControlEvents 是否正确:UIControlEventTouchUpInside
2.
是否允许交互userInteractionEnabled =YES;

3.

控件尺寸是否为零,以及 alpha(是否接近0)

4.

还有就是父控件的交互是否允许。

还有其他的可能情况请留言。






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值