2013-02-23 104 views
2

我在一个ControlView中有一个DatePicker()和按钮,当我点击它的按钮时,它跳转到一个函数,我在DatePicker(它旋转)中选择的日期工作,问题在于datePicker spining和i点击它不选择日期的按钮,它会跳转到没有选择日期的功能。在日期选择器阻止按钮的同时,它是否可以是另一种方式?当用户已经完成旋转控制(对于事件UIControlEventValueChanged我可以阻止一个按钮吗?

感谢答案

+0

一个典型的用户界面只会在需要时显示日期选择器 - 所以你可以在显示选择器时阻止按钮(启用=否),反之亦然。 – 2013-02-23 14:44:24

+0

我刚刚构建了一个在UIControlEventAllEvents上触发的事件,并发现日期选取器在它停止动画之前不会告诉你它的状态,只有这样才能获得(仅)UIControlEventValueChanged。真的很伤心。 – danh 2013-02-23 17:07:51

+0

我只是尝试添加一个swipeGestureRecognizer与取消器与cancelsTouchesInView = NO;目标/选择器不启动。试图将其添加到父视图。适用于父母,不在日期选择器上。 +1的真正困难的问题。对不起,我没有想法。 – danh 2013-02-23 17:16:11

回答

1

UIDatePicker控制将发送一个操作方法。您可以使用此操作方法启用该按钮,以便该按钮只能在用户完成选择日期后才能按下。

参见docs

当正确配置中,当用户完成旋转轮中的一个来改变 日期或时间的UIDatePicker对象发送一个动作 消息;相关联的控件事件是 UIControlEventValueChanged。

+0

但是,什么事件应该触发禁用按钮?没有什么我能想到的。 – rmaddy 2013-02-23 15:55:17

+0

@rmaddy默认情况下它会被禁用,并且可能在'UIControlEventTouchUpInside'上被禁用? – trojanfoe 2013-02-23 16:26:15

+0

但是如果用户旋转选取器并且按钮被启用会怎么样。现在用户再次旋转。糟糕 - 按钮在选取器旋转时启用。我想不出任何方式让OP实现所需的功能。 – rmaddy 2013-02-23 16:34:37

相关问题