Jor*_*n H 9 range nsattributedstring ios nsrange swift
我正在尝试确定a中给定字符串出现的索引String,然后NSRange使用这些索引生成一个以便为a添加属性NSMutableAttributedString.问题是rangeOfString退货,Range<Index>但addAttributes:range:预计会有NSRange.我尝试NSRange从开始和结束索引创建Range失败,因为String.CharacterView.Index不是Int,因此它不会编译.
如何使用Range<Index>值来创建NSRange?
var originalString = "Hello {world} and those who inhabit it."
let firstBraceIndex = originalString.rangeOfString("{") //Range<Index>
let firstClosingBraceIndex = originalString.rangeOfString("}")
let range = NSMakeRange(firstBraceIndex.startIndex, firstClosingBraceIndex.endIndex)
//compile time error: cannot convert value of type Index to expected argument type Int
let attributedString = NSMutableAttributedString(string: originalString)
attributedString.addAttributes([NSFontAttributeName: boldFont], range: range)
Run Code Online (Sandbox Code Playgroud)
如果您从原始字符串转换为Cocoa NSString开头:
var originalString = "Hello {world} and those who inhabit it." as NSString
Run Code Online (Sandbox Code Playgroud)
...然后你的范围结果将是NSRange,你将能够将它们交还给Cocoa.
| 归档时间: |
|
| 查看次数: |
7842 次 |
| 最近记录: |