Зная, когда NSPopoverTouchBarItem покажет свернутое представление - PullRequest
0 голосов
/ 28 мая 2020

У меня есть NSPopoverTouchBarItem на моей панели Touch Bar, созданной в Interface Builder.

В всплывающем окне есть пользовательский NSView внутри, и я хочу загружать данные в него только тогда, когда представление активировано, но я не может найти никакого способа распознать, когда содержащиеся NSTouchBar или NSView становятся видимыми.

Согласно документам, NSTouchBarDelegate также не имеет никаких методов делегата для появления представления.

enter image description here

Какой класс я должен создать подкласс, или я должен отслеживать viewWillDraw на моем пользовательском NSView и настраивать какую-то хакерскую схему?

1 Ответ

0 голосов
/ 28 мая 2020

Документы были не слишком ясными, но подклассы NSPopoverTouchBarItem дают вам -(void)showPopover:(id)sender и -(void)dismissPopover:(id)sender.

Затем вы можете определить метод делегата, чтобы сообщить родительскому классу, что это всплывающее окно показало. 1006 *

-(void)showPopover:(id)sender {
    [super showPopover:sender];
    [self.delegate touchPopoverDidShow];
}
...