问题描述
我想为用户触摸设置 UIButton
禁用。 setEnabled
和 setUserInteractionEnabled
都可以执行此操作。哪个更好?它们有何不同?
I want to make a UIButton
disable for user touch. Both setEnabled
and setUserInteractionEnabled
can do this. Which is better? How are they different?
推荐答案
已启用
属于 UIControl
,这是 UIButton
的超类。 userInteractionEnabled
是 UIView
的属性(这是 UIControl $ c $的超类C>)。
启用
会对对象的可视状态产生影响(默认情况下显示为灰色),并且通常是禁用控件 - 视觉反馈的首选方法,指示行为是一件好事。
enabled
is a property of UIControl
, which is the superclass for UIButton
. userInteractionEnabled
is a property of UIView
(which is the superclass of UIControl
). enabled
has effects on the visual state of the object (grayed out, by default) and is generally the preferred method of disabling a control—visual feedback indicating behaviors is a good thing.
除此之外没有太多实际的结果。与控件交互的代码更有可能检查按钮是否已启用,而不是设置了userInteractionEnabled属性;它更传统。
There's not much practical upshot beyond that. Code that interacts with your controls is more likely to check if buttons are enabled than if their userInteractionEnabled property is set; it's more conventional.
这篇关于哪个更好,setEnabled或setUserInteractionEnabled?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!