日本語(を含む)の文字列でNSFontAttributeName
を指定した場合のみ
NSMakeRange
が指定した範囲に効かない現象が起こっています。
回避策をご存知の方いましたら教えていただけると幸いです。
英語
期待する動作:"t"がBoldかつサイズ20になる
結果:"t"がBoldかつサイズ20になる
Swift
1let attrText = NSMutableAttributedString(string: "test") 2attrText.addAttribute(NSFontAttributeName, value: UIFont.boldSystemFontOfSize(20), range: NSMakeRange(0, 1))
日本語
期待する動作:"テ"がBoldかつサイズ20になる
結果:"テスト"がBoldかつサイズ20になる
Swift
1let attrText = NSMutableAttributedString(string: "テスト") 2attrText.addAttribute(NSFontAttributeName, value: UIFont.boldSystemFontOfSize(20), range: NSMakeRange(0, 1))
追記
UITextViewを使用した場合に再現します。
UILabelでは期待する動作が確認できました。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/04 02:15
2016/07/04 02:21