编辑:我在github上做了一个小xcode项目,它复制了我描述的问题:https://github.com/mdinacci/testnscursor
我有一个自定义的NSTableCellView,其中我通过NSTextField跟踪鼠标进入/退出事件。当鼠标进入该字段时,我将光标改为指针:

- (void)mouseEntered:(NSEvent *)theEvent
{
    NSCursor *cursor = [NSCursor pointingHandCursor];
    [cursor set];
}

- (void)mouseExited:(NSEvent *)theEvent
{
    NSCursor *cursor = [NSCursor arrowCursor];
    [cursor set];
}

该表显示在NSPopover中,上面的代码在popover处于焦点时工作得很好,但在popover未处于焦点时不会工作。cell视图确实接收到enter/exit事件,但是光标不会更新。
这是虫子吗?你知道为什么当popover不在焦点时光标不会更新吗?

最佳答案

苹果确认这是一个bug(2277286),据我所知,目前还没有解决方法。

10-06 02:21