【发布时间】:2014-06-06 02:01:51
【问题描述】:
作为练习,我正在使用 Swift 重写我的一个应用程序。
在 Objective-C 中,我有以下代码行:
NSRange extendedRange = NSUnionRange(range, [[self.backingStore string]lineRangeForRange:NSMakeRange(NSMaxRange(range), 0)]);
在swift中它看起来像这样:
let str = backingStore.string
let extendedRange: NSRange = NSUnionRange(range, str.lineRangeForRange(NSMakeRange(NSMaxRange(range), 0)))
但是,由于某种原因,我得到的“Int”与“String.Index”不同,我不知道为什么。任何帮助/见解将不胜感激。
编辑:
如果我桥接我的弦,它会起作用:
let str = backingStore.string
let extendedRange: NSRange = NSUnionRange(range, str.bridgeToObjectiveC().lineRangeForRange(NSMakeRange(NSMaxRange(range), 0)))
【问题讨论】:
-
字符串的索引可能是一个无符号整数...
-
你可能想看看这里的讨论:stackoverflow.com/questions/24029163/…
-
@connor,我以前看过那篇文章...我认为它没有回答我的问题...
标签: ios objective-c swift