当前位置 : 主页 > 手机开发 > ios >

ios – 在禁用的UIButton上接收点击事件的最简单方法是什么?

来源:互联网 收集:自由互联 发布时间:2021-06-11
我在表单上有一个UIButton,并希望在表单不完整时将其置于禁用状态.但是,我仍然希望能够检测用户是否尝试按下按钮即使处于禁用状态,以便界面可以让用户知道表单上的某些必填字段尚
我在表单上有一个UIButton,并希望在表单不完整时将其置于禁用状态.但是,我仍然希望能够检测用户是否尝试按下按钮即使处于禁用状态,以便界面可以让用户知道表单上的某些必填字段尚未填写(并且可能滚动到那个领域并指出它,等等).

似乎没有任何直接的方法来做到这一点.我尝试简单地将UITapGestureRecognizer附加到UIButton,但是当按钮处于禁用状态时它不会响应.

如果可能的话,我想避免继承UIButton,除非这是唯一的方法.

创建一个后备按钮.把它放在主按钮后面.将其背景和文本颜色设置为[UIColor clearColor]以确保它不会显示. (您不能将其alpha设置为0,因为这会使其忽略触摸.)在Interface Builder中,后备按钮应位于子视图列表中的主按钮上方,如下所示:

给它与主按钮相同的框架.如果您正在使用自动布局,请同时选择主按钮和后备按钮并创建约束以保持所有四条边相等.

当主按钮被禁用时,触摸将传递到后退按钮.启用主按钮后,它将捕获所有触摸,后退按钮将不会接收任何触摸.

将后备按钮连接到某个操作,以便您可以检测它何时被轻击.

网友评论