So implementieren Sie ein Suchfeld wie das im Finder

9

In meiner OS X App (mit Cocoa) möchte ich ein Suchfeld wie das im Finder implementieren (siehe Screenshot oben).

Ich überlege, die Unterklassen NSSearchField und NSSearchFieldCell zu erstellen. Letzterer sollte für die Verwaltung der "Token" verantwortlich sein. Ich habe Programmierhandbuch anzeigen gelesen, Kontroll- und Zellprogrammierungsthemen und die Dokumente von NSTokenField[Cell] , NSSearchField[Cell] , NSCell .

Einige Dinge sind mir unklar:

1) Wie kann ich in der Unterklasse das Vergrößerungssymbol verwenden, das von NSSearchFieldCell ? Ist das Symbol ein NSImage ? Es gibt eine Animation dafür, was soll ich lernen, wenn ich die Animation selbst implementieren muss?

2) Was verwendet werden soll, um die Dropdown-Schaltfläche zu implementieren (wie die Schaltfläche "NAME" im Beispielbild). Welche Klasse wird verwendet, um die Suchkategorie (z. B. "NAME") und das Schlüsselwort (z. B. "yh") zu gruppieren? Was ist der "Pfeil" nach "NAME"?

Auch Bücher, Artikel oder andere Ressourcenempfehlungen sind willkommen.

Eine ähnliche und verwandte Frage ist Mail wie Suchfeld mit Token (Mac OS X 10.7)

Aktualisierung am 26.07.2015:

Die Verwendung von NSCell hat sich seit Yosemite geändert, Wie erstelle ich einen benutzerdefinierten thematischen NSButton, ohne NSButtonCell zu untergliedern? bezieht sich auf dieses Thema. Zellen sind veraltet, daher ist es nicht ratsam, sie zu verwenden.

    
LShi 25.07.2015, 14:49
quelle

1 Antwort

1

Das sieht nach Spaß aus. Ich würde Unterklassen NSTextField betrachten und eine Zuordnung von Bildern zum Texteintrag erstellen, die Sie der leftView -Eigenschaft hinzufügen können, die alle Ihre Sucheinschränkungen enthält.

Wenn Sie die Bilder hinzufügen, um die Sucheinschränkungen zusammen mit der Lupe darzustellen, sollte Ihr Text automatisch umgestellt werden und sollte ähnlich aussehen wie auf dem Foto.

Viel Glück.

    
dokun1 10.11.2015 14:46
quelle

Tags und Links