gpt4 book ai didi

objective-c - 迭代 NSTableView 中的 View

转载 作者:行者123 更新时间:2023-12-03 17:35:31 25 4
gpt4 key购买 nike

我正在尝试调整基于 View 的 NSTableView 中所有 NSTextField 的大小。我想在所有文本字段上调用 ​​[myTextfield sizeToFit]。我的问题是如何迭代 TableView 中的所有 View 。我尝试了 enumerateAvailableRowViewsUsingBlock: 但它不起作用。我该怎么做才能解决这个问题?

最佳答案

试试这个。在 IB 中,将文本字段的标签设置为您想要的任何内容(在本例中我使用 1)。然后,您将能够通过调用 viewAtColumn:row:makeIfNecessary: 访问每行的 NSTableCellView。确保 makeIfNecessary: 设置为 YES

代码:

int x;
for (x = 0; x < [tableView numberOfRows]; x++) {
NSTableCellView *cellView = [tableView viewAtColumn:0 row:x makeIfNecessary:YES];
NSTextField *tField = [cellView viewWithTag:1];
[tField sizeToFit];
}

这对我有用,所以如果它不适合你,我会感到惊讶。如果有人能够深入了解为什么 makeIfNecessary: 必须是 YES 才能访问应该已经创建的行 View ,我将不胜感激。

关于objective-c - 迭代 NSTableView 中的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10872941/

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