ファイルクリエーターコード/タイプコードに応じてカスタムアイコンを表示するにはどうすればよいですか? たとえば、作成者コード 'TSTx' でファイルを開くアプリケーションがある場合、その作成者コードのアイコンを設定するにはどうすればよいですか?
ファイル拡張子を変更せずにファイルがダウンロードされているときに、Cyberduck のようなアプリが進行状況アイコンを表示する方法であると推測しています。これが、私が再現しようとしている動作です。
ありがとう、J
ファイルクリエーターコード/タイプコードに応じてカスタムアイコンを表示するにはどうすればよいですか? たとえば、作成者コード 'TSTx' でファイルを開くアプリケーションがある場合、その作成者コードのアイコンを設定するにはどうすればよいですか?
ファイル拡張子を変更せずにファイルがダウンロードされているときに、Cyberduck のようなアプリが進行状況アイコンを表示する方法であると推測しています。これが、私が再現しようとしている動作です。
ありがとう、J
このために作成者とタイプコードに依存するべきではありません。すべてのファイルに割り当てられているわけではありません。実際、すべてのアプリに固有のクリエーターコードがあるわけではないため、確実に機能しなくなります。
それらのファイルがファイルシステムに存在し、適切なパス拡張子を持っている場合-[NSWorkspace iconForFile:]
は、トリックを実行する必要があります。(これはカスタムアイコンでも機能すると思います。)ファイルがファイルシステムに存在しない場合(たとえば、データベースに保存されているため)、これ-[NSWorkspace iconForFileType:]
が最適な方法です。パス拡張子を指定するか、必要に応じてHFSタイプコードを指定できます(関数で文字列にラップする必要がありNSFileTypeForHFSTypeCode
ます)。
Finderで使用するカスタムアイコンを設定するために、タイプコードと作成者コードは必要ありません。を使用し-[NSWorkspace setIcon:forFile:options:]
ます。