Nach dieser Frage (Custom NSView embedded in NSSscrollView), wenn meine benutzerdefinierte Ansicht in eine NSScrollView mit IB eingebettet ist, kann ich dies in der watchFromNib Methode erkennen und die erforderliche Initialisierung durchführen (ich muss einrichten einige Scroll-Benachrichtigungen).
Mein Problem ist, wenn durch benutzerdefinierte Ansicht zu einem NSScrollView aus Code hinzugefügt wird, die documentView-Eigenschaft scrollview festlegen. In diesem Szenario wird meine benutzerdefinierte Ansicht auf irgendeine Weise benachrichtigt (einige NSView-Methode, die aufgerufen wird und ich überschreiben kann) oder muss ich meine Initialisierung explizit durchführen, nachdem meine Ansicht der Bildlaufansicht hinzugefügt wurde?Benachrichtigung, wenn benutzerdefiniertes NSView zu einem NSScrollView hinzugefügt wurde
0
A
Antwort
1
Die documentView
der Bildlaufansicht ist eine Unteransicht dieser Bildlaufansicht und NSView
hat viele nützliche Methoden. Im Kapitel „Verwalten der Ansichtshierarchie“:
viewDidMoveToSuperview
Informiert die Ansicht, dass seine Superview (möglicherweise auf Null) geändert hat.
viewDidMoveToWindow
Informiert die Ansicht, daß es auf eine neue Ansichtshierarchie hinzugefügt wurde.
Wenn die Ansicht zu einem Superview hinzugefügt wird, wird viewDidMoveToSuperview
aufgerufen. Aber die Ansicht könnte bereits in einer Ansicht (in einer XIB oder in Code) sein und diese Superansicht könnte zu einer Bildlaufansicht hinzugefügt werden. viewDidMoveToWindow
wird aufgerufen, wenn die Ansicht einer Ansichtshierarchie hinzugefügt oder daraus entfernt wurde.
Verwandte Themen
- 1. Benutzerdefiniertes NSView in NSSscrollView eingebettet
- 2. Zentrieren Sie ein NSView in einem NSScrollView
- 3. Benachrichtigung erhalten, wenn Element zu Array hinzugefügt/entfernt wurde
- 4. NSScrollView Bildlaufposition
- 5. Benutzerdefiniertes NSView in NSMenuItem empfängt keine Mausereignisse
- 6. So erhalten Sie eine Benachrichtigung, wenn ein NSView verschoben wird
- 7. NSScrollView (oder NSClipview) Fokusring?
- 8. Lädt XIB-Datei in ein benutzerdefiniertes NSView wird in einem anderen benutzerdefinierten NSView eingebettet
- 9. Benachrichtigung zweimal ausgelöst, obwohl Beobachter nur einmal hinzugefügt wurde
- 10. Benachrichtigung, wenn Internet unter iOS verfügbar wurde
- 11. NSTableView-Rahmen in einem NSClipView/NSScrollView mit Auto-Layout
- 12. Wissen, wann eine Codezeile zu einem GitHub-Repository hinzugefügt wurde
- 13. ios8 TouchID-Erkennung, wenn Fingerabdruck hinzugefügt wurde
- 14. Cocoa - NSScrollView mit großer Anzahl von Elementen
- 15. Verwenden von NSScrollView mit CALayer
- 16. Erhalte eine Benachrichtigung in Android, wenn ein Firebase-Kind hinzugefügt wurde
- 17. tk Fenster wurde kleiner, wenn eine Schaltfläche hinzugefügt wurde
- 18. Wie zeige ich die Benachrichtigung an, wenn das Element mit AJAX und PHP hinzugefügt oder nicht hinzugefügt wurde?
- 19. Wie kippen Sie das Koordinatensystem eines NSView?
- 20. NSView lässt Artefakte in einem anderen NSView, wenn der erste über den zweiten verschoben wird
- 21. Wissen, ob eine Klasse hinzugefügt wurde (wurde mit Javascript hinzugefügt)
- 22. IKImageBrowserView in NSScrollView in InterfaceBuilder Problem?
- 23. Der verwaltete Server kann nicht gestartet werden, wenn er zu einem vorhandenen Cluster hinzugefügt wurde
- 24. NSTextView innerhalb eines NSScrollView nicht bewegen :(
- 25. Cocoa NSView in NSTableView Zelle
- 26. Bootstrap Auto Close dynamisch hinzugefügt Benachrichtigung
- 27. NSView Fehler in einem sehr einfachen Programm
- 28. Firebase-Benachrichtigung für Kind hinzugefügt/geändert
- 29. Benutzerdefiniertes Steuerelement kann nicht programmgesteuert hinzugefügt werden
- 30. Einstellung NSScrollView Inhalt oben links statt unten links beim Dokumentwechsel