如何將標記(如NSTokenField
)添加到NStextView
?帶標記的NSTextView
11
A
回答
8
這實際上有點複雜。您將需要爲每個「令牌」創建一個自定義NSTextAttachment
,並將其插入到NSTextStorage
中以供您的NSTextView
使用。
有一個great post by David Sinclair at Dejal Systems解釋如何做到這一點。
4
我想通了,使用的令牌的自定義單元格類的簡單的方法:
- 寫繼承
NSTextAttachmentCell
細胞類並重新實現- (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView
這將是代表你的NSTextView
令牌類。 - 要插入一個令牌請按照下列步驟操作:
- 創建的
NSTextAttachment
- 將附着的細胞的情況下,以自己的權杖細胞類的一個實例。
- 使用該附件創建一個屬性字符串。
- 將屬性字符串插入文本視圖。
- 創建的
該插入令牌插入文本視圖可能是這樣的一種方法:
- (void)insertAttachmentCell:(NSTextAttachmentCell *)cell toTextView:(NSTextView *)textView
{
NSTextAttachment *attachment = [NSTextAttachment new];
[attachment setAttachmentCell:cell];
[textView insertText:[NSAttributedString attributedStringWithAttachment:attachment]];
}
該方法更適合於令牌比一個由David Sinclair。由於我們想要顯示動態內容(令牌)而不是靜態圖像,因此不需要使用文件包裝。
但是,大衛的概念看起來可能很有用。他描繪了一個實現拖放操作的好方法。複製粘貼功能。
+2
在iOS上,沒有NSTextAttachmentCell類的情況如何? – fatuhoku 2014-06-24 10:29:20
相關問題
- 1. NSTextView中的光標
- 2. AttributedString標在NSTextView
- 3. 帶標記
- 4. 如何實現執行RTF轉換的即時標記的NSTextView
- 5. 帶Kubernetes的不帶標記Token
- 6. 帶特殊標記的WINCEREL
- 7. 帶動畫的ModalPopUpExtender標記
- 8. 記事本++帶宏的標記樣式
- 9. 標題標記和帶ID的div
- 10. IMG標記不帶圖像
- 11. 包帶通用標記
- 12. PHP帶狀標記問題
- 13. NSTextView
- 14. 帶複選標記的UITableViewCell,複製複選標記
- 15. 在NSTextView頂部的光標矩形
- 16. 帶有標記的SUM值的公式
- 17. 帶錨標記的CSS幫助
- 18. 的TableView帶有複選標記
- 19. ColumnText和帶有Image Base64標記的HTML
- 20. 帶有OATH標記的Azure MFA
- 21. htaccess帶錨標記的重定向url
- 22. 帶有infowindow的多個標記
- 23. 帶有多個標記的網址
- 24. 帶孔的html區域標記
- 25. 帶區域學習的標記檢測
- 26. Stuts2中帶有顯示標記的java.lang.SecurityException
- 27. 帶參數的jsonp腳本標記
- 28. 帶位置標記的用戶VisualStudio PostBuild
- 29. Leaflet不標記帶geojsonFeatures的點?
- 30. 帶Webpack和React的意外標記
謝謝你。我不知道從哪裏開始尋找它。這是一個很好的開始。 – goo 2009-09-21 22:24:29
哇,這篇文章是在2007年一直寫的...它是否適用於TextView的較新iOS 7 TextKit實現? – fatuhoku 2014-06-24 10:26:16
該文章是爲MacOS編寫的。 iOS上最新的內容是什麼? – fatuhoku 2014-06-24 10:28:46