gpt4 book ai didi

objective-c - Cocoa:禁用 View 中所有控件的最佳方式

转载 作者:太空狗 更新时间:2023-10-30 03:29:05 25 4
gpt4 key购买 nike

在 OS X 应用程序中,我在 ScrollView 中有各种文本字段、按钮和其他控件。有没有办法一次性禁用 ScrollView 中的所有元素?

我想避免在每个项目上调用 setEnabled:,这样如果我以后想向 ScrollView 添加更多控件,维护起来会更容易。

我想强调的是,这是针对 OS X 应用程序的,因此适用于 iOS 的技术不一定适用于此。

最佳答案

为了记录,这里是我在我的 Cocoa 应用程序中使用的 NSView 类别:
https://github.com/ardalahmet/DisableSubviews

这使得一次启用/禁用 subview 变得容易,并且还提供了很大的灵 active 。
您可以进行这样的调用:

[scrollView disableSubviews:YES];

[self.window.contentView disableSubviews:YES
ofType:[NSTextField class]];

[someView disableSubviews:YES
filter:^BOOL (NSView *v) {
return [v isKindOfClass:[NSTextField class]] &&
(((NSTextField *) v).stringValue.length < 1);
}];

[otherView disableSubviews:disable
startTag:3
endTag:7];

希望对您有所帮助。

关于objective-c - Cocoa:禁用 View 中所有控件的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9619316/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com