2016-10-04 5 views
-1

である私は私のtableViewCell内のすべてのlabelが正しく表示されているが、唯一の私のattributeString出力が「optional(1)迅速 - 細胞label.textはオプション

 let mString = String(self.productList?["market_price"].int) 
    let attributeString: NSMutableAttributedString = NSMutableAttributedString(string: mString) 
    attributeString.addAttribute(NSStrikethroughStyleAttributeName, value: 2, rnge: NSMakeRange(0, attributeString.length)) 
    attributeString.addAttribute(NSStrikethroughColorAttributeName, value: UIColor.lightGrayColor(), range: NSMakeRange(0, attributeString.length)) 
    self.marketPriceLabel.attributedText = attributeString 
+1

理由はおそらくオプションで返されると思われる不思議な '.int'関数であり、' String'初期化子は任意の文字を扱います。 'productList?[" market_price "]'の結果は、とにかくオプションです。 – vadian

答えて

0

である私は解決策を見つけました。

let mInt: Int = (self.productList?["market_price"].int)! 
let mString: String = String(mInt) 
let attributeString: NSMutableAttributedString = NSMutableAttributedString(string: mString) 
attributeString.addAttribute(NSStrikethroughStyleAttributeName, value: 2, rnge: NSMakeRange(0, attributeString.length)) 
attributeString.addAttribute(NSStrikethroughColorAttributeName, value: UIColor.lightGrayColor(), range: NSMakeRange(0, attributeString.length)) 
self.marketPriceLabel.attributedText = attributeString