12

OS X 10.10 では、ソース リストは明るい鮮やかな外観を使用しているようです。Finder (およびその他のサード パーティ アプリケーション、Things.app など) では、ソース リストで選択された項目は暗い鮮やかな外観で示されます。たとえば、下の画像のデスクトップ行を参照してください。

この動作を再現するにはどうすればよいですか? テーブル行ビューを指定するためにデリゲート メソッドを使用する必要がありますか?

-outlineView:rowViewForItem:

自分でカスタム描画を試みますか、それとももっと簡単なアプローチがありますか? Xcode で標準のソース リスト UI を作成した場合、デフォルトの強調表示は、以前のバージョンの OS X で見られた標準の青い四角形のままです。

明るい鮮やかなスタイルのソースリスト、選択された項目はより暗くなります (暗い鮮やかなスタイルを使用)

4

4 に答える 4

12

しばらく遊んだ後、これを達成する方法を見つけました。NSTableViewSelectionHighlightStyleSourceList を使用して NSOutlineView の外側をクリックすると、「Finder のハイライト」スタイルが表示されることがわかりました。だから、ファーストレスポンダーにすることを拒否しても、そのままでいいと思いました。

NSOutlineView をサブクラスにして、このメソッドをオーバーライドするだけです。

-(BOOL)acceptsFirstResponder{
    return NO;
}

機能しますが、いくつかの欠点があります。たとえば、NSOutlineView での矢印キーの使用は機能しなくなります。Things アプリをダウンロードしましたが、矢印キーも使用できないため、これが彼らのやり方である可能性が非常に高いです。誰かがより良い方法を見つけたら、投稿してください。

于 2014-11-18T09:26:38.573 に答える
1

よくわかりませんが、これは「Dark Vibrancy」です。

背景色を「Alternate Selected Control Text Color」のようなものに設定してみます。

InterfaceBuilder の NSTextField を見てください。視覚効果ビューで特別な外観を持つ多くの「コントロール テキスト」カラーがあります。

および選択色の設定については、この回答を参照してください(テストされていません): NSTableview ハイライトの色を変更します

于 2014-10-28T10:27:31.787 に答える