2017-02-27 162 views
2

我正在使用常規NSSearchField(未分類)。當它不活動時,placeholderString居中,我認爲這對我很好。但我注意到,除了placeholderString之外的圖標只是在左側繪製的,所以實際上整個事物似乎並不居中。NSSearchField:如何隱藏圖標(lupe)

enter image description here

我怎麼能隱藏圖標LUPE?

回答

2

沒有任何對圖標的直接訪問,所以解決方法是首先訪問NSSearchField單元格(如圖所示轉換),然後訪問其按鈕單元格。

自我在這個例子中是NSSearchField

[(NSButtonCell *)[(NSSearchFieldCell *)self.cell searchButtonCell] setTransparent:YES]; 

Deafault搜索字段的一個實例:

enter image description here

隱藏/透明圖標:

enter image description here

+1

向你的答案添加一些描述可能更好,以幫助他人理解它。 –

+0

我同意@MartinZhai。希望編輯後的版本能夠澄清它。 –

+0

謝謝丹尼爾!工作真的很棒。但是,當searchField處於非活動狀態時,我無法找到如何隱藏圖標,但在用戶編輯它時顯示它。任何簡單的解決方案呢? :) – ixany

0

Swift3轉換:

(self.cell as! NSSearchFieldCell).searchButtonCell?.isTransparent = true