2010-02-25 53 views
5

我能夠使用NSTokenField,它很容易使用..但我希望你的建議,我如何可以自定義它,就像它是在Mac郵件ie「To/CC」字段。當沒有。令牌字段中的令牌增加了「To」字段的高度得到增加到一定的限制,然後垂直滾動器開始出現!如何自定義NSTokenField就像在Mac郵件中的「To/CC」字段?

默認情況下,當我們使用令牌字段既不會增加它的高度,也不會出現垂直滾動條!我在IB嘗試了不同的組合,但無法獲得像功能一樣的Mac郵件。

任何人都可以建議我一些解決方案嗎?

回答

3

您必須繼承NSTokenField才能獲得所需的功能。請確保並撥打setWraps:YES。

當令牌字段內容發生變化時,您必須計算令牌字段所需的大小並自行調整大小。與添加滾動條相同。在令牌字段的高度達到一定大小後,您將在該字段中插入滾動視圖。相反,當重新計算令牌字段大小小於臨界大小時,您將刪除滾動視圖。

這是一個相當數量的工作(我發現),以使其正常工作。 Apple表示,NSTokenField「提供類似於郵件應用程序中的地址字段的標記化編輯」,但它實際上並沒有那麼相似,因爲它沒有內置調整大小,拖放對除文本以外的任何內容都是有問題的。

+0

thanx ....爲您的答覆:)我一定會嘗試它! – Devarshi 2010-06-18 07:24:19

2

我能用IFVerticallyExpandingTextField實現這個。由於NSTokenField繼承自NSTextField,因此我從NSTokenField繼承了IFVerticallyExpandingTextField,然後繼承了IFVerticallExpandingTextField,以實現我需要用我的NSTokenField版本完成的所有事情。

這應該只是一個下降。馬上就應該開始工作。

+0

該鏈接已經死亡...... – markjs 2013-11-12 13:31:24

+0

cocoadev.com的「所有權」變化讓它變得有些詭異。不過,一個簡單的谷歌「網站:cocoadev.com」IFVerticallyExpandingTextField發現(格式非常嚴重)的代碼:http://cocoadev.com/IFVerticallyExpandingTextField – 2014-11-16 23:38:01

相關問題