从窗口获取对象的最佳方式是什么。我有一个由 81 个 NSTextFields 组成的类似数独的网格,我更喜欢简单地拥有一个 NSTextFields 数组,而不是通过 IBOutlet 链接的 81 个单独的 NSTextFields。 例如:如果有一种方法可以向 NSWindow 发送消息,例如 getObject: (NSString*) title,然后使用 for 循环将这些 NSTextField 添加到 NSMutableArray,那就太理想了。任何建议将不胜感激!
-卢克
最佳答案
您可以执行以下操作:
NSArray *subviews = [_window subViews];
for(NSView *subview in subviews)
{
if( [subview isKindOfClass:[NSTextField class]] )
{
[_textFields addObject:subview];
}
}
在-awakeFromNib
现在,我认为你不应该这样做。创建一个自定义 NSView 来充当“数独” View 将更容易在代码中使用,并且可以更好地提高应用程序的性能。加载带有 81 个文本字段的窗口是相当繁重的 + 使用更多的内存。
关于objective-c - 从窗口获取对象 Cocoa,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8636774/