如何禁用 UISwitch?

发布于 2024-11-01 11:07:33 字数 277 浏览 5 评论 0原文

这可以禁用 UISwitch 吗?我的意思并不是将其置于关闭状态,而是禁用用户交互,并将其显示为灰色。

在我的应用程序中我有两个条件

if (condition == true) {  
  // UISwitch should be enabled  
} else {  
  // UISwitch should be visible, but disabled  
  // e.g uiswitch.enable=NO;  
} 

有什么建议吗?

Is this possible to disable a UISwitch? I do not mean putting it in an OFF state, I mean disabling user interaction, and having it appear gray.

In my app I have two conditions

if (condition == true) {  
  // UISwitch should be enabled  
} else {  
  // UISwitch should be visible, but disabled  
  // e.g uiswitch.enable=NO;  
} 

Any suggestions?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

蓝眼睛不忧郁 2024-11-08 11:07:33

这应该可以做到:

switch.enabled = NO;

或者等效地:

[switch setEnabled:NO];

其中 switch 是您的 UISwitch 变量名称。

编辑于 2018 年 4 月 18 日

上面的答案(显然)是一个 Objective-C 解决方案,早在人们听说过 Swift 之前就已经写好了。当然,Swift 的等效解决方案是:

switch.isEnabled = false

This should do it:

switch.enabled = NO;

or equivalently:

[switch setEnabled:NO];

where switch is whatever your UISwitch variable name is.

Edit 18-Apr-2018

The answer above is (clearly) an Objective-C solution, written well before anyone had ever heard of Swift. The Swift equivalent solution is, of course:

switch.isEnabled = false
故事与诗 2024-11-08 11:07:33

是的,你可以。 UISwitch 继承自 UIControl,并且 UIControl 有一个 enabled 属性。 Apple 的 UIControl 文档 包含所有详细信息。

启用

switch.enabled = YES;

禁用

switch.enabled = NO;

Yes you can. UISwitch inherits from UIControl, and UIControl has an enabled property. Apple's UIControl Documentation has all of the details.

To enable

switch.enabled = YES;

To disable

switch.enabled = NO;
著墨染雨君画夕 2024-11-08 11:07:33

对于那些寻找 Swift 3 的人,

switch.isEnabled = false // Disabled switch

我知道您并没有要求“关闭”状态,但以防万一有人,比如我自己,偶然发现这里:

switch.isOn = false

For those looking for Swift 3,

switch.isEnabled = false // Disabled switch

I know you didn't ask for "off" state, but just in case anybody, like myself, stumbled upon here :

switch.isOn = false
爱冒险 2024-11-08 11:07:33

[switchNameenabled] = NO;

使用它来禁用您的开关。

感谢 rckoenes 的编辑:“您不应该尝试通过 getter 设置属性。您应该使用 . 语法属性的 setter。”

[switchName enabled] = NO;

Use that to disable your switch.

EDIT thanks to rckoenes: "You should not try to set a property via getter. You should use either the setter of . syntax property."

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文