2016-11-17 58 views
1

我的應用程序從服務器接收json並將一些字符串存儲在Core Data中。然後這個字符串顯示在uitableviewcell裏面的uilabel中。文本中包含特殊字符,例如「å。我的問題是文本不顯示在單元格中,但它顯示在簡單的UIView內的uilabel中。此外,xcode中的屏幕截圖顯示UITablViewCell中的uilabel包含文本,但在視覺上是不可見的使用NSJSONSerialization類UITableViewCell中的UILabel不顯示帶有特殊符號的文本,如「å」

的Json解析

它的外觀爲用戶:。http://prntscr.com/d8f12e 它的外觀在屏幕捕獲:http://prntscr.com/d8f26w

+0

您的標籤文本的顏色和大小? –

+0

label.textColor = UIColor.black; label.font = UIFont.systemFont(ofSize:12) –

回答

1

我有一個辦法 當你正在訪問tableView方法cellForRowAtIndex中的字符串,然後在th中使用是方式:

let jsonString = strFName?.cStringUsingEncoding(NSUTF8StringEncoding) 

let jsonData = NSData(bytes: jsonString!, length: jsonString!.count) 

cell.lbl_Name.text = String(data: jsonData, encoding: NSNonLossyASCIIStringEncoding) 

從這種類型的解析,你會得到你想要的輸出。

+0

不適用於我:讓jsonString = text?.cString(using:.utf8) let jsonData = Data(bytes:jsonString !, count:jsonString!.count ) cinemaLabel.text = String(data:jsonData,encoding:String.Encoding.nonLossyASCII)// - return nil 任何其他解決方案? –

+0

請在這些代碼行的每一步之後打印日誌,我認爲您使用的是swift 3.0,但它可能不會影響代碼.... –