我有一個NSTextField標籤已歸因於它的文本。顏色和尺寸與默認值不同。 (文字有點大而且綠色)現在,我需要能夠選擇標籤中的文本,以便點擊嵌入到屬性文本中的超鏈接。這工作正常;但是,選擇文本時,文本的格式會恢復爲默認值(較小的黑色字體)。NSTextField(標籤)歸因文本:選擇
有沒有辦法阻止這種行爲,以便在用戶在標籤上單擊(選擇文本)時保留我的樣式?
編輯:對於記錄,我有另一個白色文本標籤,選擇時不會改變顏色,只有大小。
我有一個NSTextField標籤已歸因於它的文本。顏色和尺寸與默認值不同。 (文字有點大而且綠色)現在,我需要能夠選擇標籤中的文本,以便點擊嵌入到屬性文本中的超鏈接。這工作正常;但是,選擇文本時,文本的格式會恢復爲默認值(較小的黑色字體)。NSTextField(標籤)歸因文本:選擇
有沒有辦法阻止這種行爲,以便在用戶在標籤上單擊(選擇文本)時保留我的樣式?
編輯:對於記錄,我有另一個白色文本標籤,選擇時不會改變顏色,只有大小。
好的。在進一步研究爲什麼白色「粘住」以及爲什麼綠色不是的情況下,我發現在界面生成器中設置的任何文本屬性在選擇後都保留而不是。
因此,解決方案是始終使用NSAttributedString調用setAttributedStringValue:
,該NSAttributedString具有要確保在標籤上進行選擇時保留的屬性。
我遇到了同樣的問題。接受的答案並不能解決它。即使我已經設置了attributedStringValue
,我的文字樣式仍然在更改。
由於響應in this question,我能夠部分通過調用解決的問題:
label.allowsEditingTextAttributes = true
謝謝,但你可以請附上一個小的代碼片段?我需要做到這一點---把一個(青色,不綠色)更大的文本放在一個標籤上,用一個超鏈接... – 2016-02-28 14:30:12
不太理解解決方案。我通過'setAttributedStringValue:'設置字符串,但仍然面臨問題。 – NSRover 2016-06-14 08:07:09