我在Objective-C中见过一些例子,比如this one,但是NSCollectionView.subview
使用了一个名为.indexOfObject
的属性,我假设它已被.indexOf
替换,但是我不知道如何使用.indexOf
。
目标C中的上下文
NSInteger index = [[myCollectionView subviews] indexOfObject:self];
Swift版本
var index = collectionView.subviews.indexOf(element: Self.Generator.Element)
问题:
如何使用
indexOf
获取所选NSCollectionView
的索引? 最佳答案
indexOf
的用法很简单:
let label = UILabel()
let tableView = UITableView()
let subviews: [UIView] = [label, tableView]
print(subviews.indexOf(label)) // Optional(0)
print(subviews.indexOf(tableView)) // Optional(1)
如您所见,它返回一个可选值,如果在数组中找不到对象,则该值为
nil
。你可以这样打开实际的索引if let index = collectionView.subviews.indexOf(self) {
// do your stuff
} else {
// view not found in subviews
}
关于macos - 如何使用indexOf获取所选NSCollectionView的索引?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32552211/