2015-05-20 65 views
4

我想保存我的UItextview'text的attributesString。 我試圖轉換爲字符串並保存。但是當我回到設置text'attributedString時,它不起作用。如何將NSAttributedString保存到CoreData

這是我如何轉換成字符串:

var a = String(stringInterpolationSegment: text.attributedText) 
    Data.setValue(a, forKey: "font") 
    Data.managedObjectContext?.save(nil) 

我這是怎麼回設置:

text.attributedText = NSAttributedString(string: size) 

但我的TextView只顯示AttributedSting

{ 
NSFont = "<UICTFont: 0x7fa9fa82aec0> font-family: \"Helvetica Neue\"; font-weight: normal; font-style: normal; font-size: 18.00pt"; 
NSParagraphStyle = "Alignment 0, LineSpacing 0, ParagraphSpacing 0, ParagraphSpacingBefore 0, HeadIndent 0, TailIndent 0, FirstLineHeadIndent 0, LineHeight 0/0, LineHeightMultiple 0, LineBreakMode 0, Tabs (\n 28L,\n 56L,\n 84L,\n 112L,\n 140L,\n 168L,\n 196L,\n 224L,\n 252L,\n 280L,\n 308L,\n 336L\n), DefaultTabInterval 0, Blocks (null), Lists (null), BaseWritingDirection -1, HyphenationFactor 0, TighteningFactor 0, HeaderLevel 0"; 
} 

我很抱歉,我無法發佈圖片。我使用swift來做到這一點。

我的問題:我該怎麼做?或者有另一種方法來保存歸屬文本?

+0

[存儲NSAttributedString核心數據]的可能的重複(http://stackoverflow.com/questions/4266226/storing-nsattributedstring-core-data) –

+0

@i_am_jorf這個問題我以前讀過,它是用object-cI寫的不知道如何做到這一點 –

+0

請參考由i_am_jorf在鏈接中的pob21的答案。這不是公認的答案,但它是正確的做法。我在我的應用程序中使用相同的方法(使用Swift)。 –

回答

6

該屬性在數據模型中應該看起來像這樣。

enter image description here

頭文件應該被修改,以符合這樣的:

@property (nonatomic, retain) NSAttributedString * attributedText; 

就是這樣。您應該能夠像其他任何屬性一樣保留屬性字符串。

假設您的實體是Event,並且您有Event類型的對象事件,則可以將其作爲event.attributedText進行訪問。這裏有一些Swift代碼樣本:

event.attributedText = NSAttributedString(string: "Hello World") 
let attributedString = event.attributedText 

讓我們知道你應該用你的母語回答。

+0

感謝您的建議!我很困惑如何做你說的頭文件。我是快速的乞丐。希望能夠慷慨地爲你提供幫助。:-) –

+0

最後我做了它,非常感謝你。 –

0

是的,你可以添加一個簡單的解決方法的JavasText。

添加Transformable類型的屬性。創建.h文件後,將該屬性的類型更改爲NSAttributedString。在該屬性中,您可以輕鬆保存屬性字符串。

希望這有助於.. :)

+0

aha,我已經做到了。感謝您的幫助!:-) –

相關問題