gpt4 book ai didi

objective-c - 当 selectable=YES 时 NSCollectionView 窃取焦点

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

我在 Interface Builder 中创建了一个 NSView,其中有两个控件:一个 NSCollectionView 和一个 NSTableView。当我的应用程序运行并将此 View 附加到窗口时,焦点将正确设置在我的 TableView 上并突出显示相应的行。然而,一旦我打电话

[collectionView setSelectable:YES];

焦点将跳转到我的 NSCollectionView 并远离 tableview。将焦点重新放在表格 View 上的唯一方法是用鼠标单击它。

以下代码行均不起作用

[tableView becomeFirstResponder];
[[self.view window] makeFirstResponder:tableView];

大家有什么想法吗?如果我在 IB 中将 CollectionView 设置为可选择,也会发生这种情况。

最佳答案

好吧,这段代码似乎“修复”了它,但它看起来仍然是一个可怕的黑客。我注意到,如果我将其设置为在一段时间后可选择,它不会窃取焦点,所以现在我这样做了

-(void) loadView {
[super loadView];
[self performSelector:@selector(responderFix) withObject:nil afterDelay:0];
}
-(void) responderFix {
[collectionView setSelectable:YES];
}

关于objective-c - 当 selectable=YES 时 NSCollectionView 窃取焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18523567/

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