我的代码在iOS 8.0上运行良好,由于我更新到了Xcode 6.1/SDK 8.1,我无法获得编译的swift代码
我正试图从类似的NSString中获取CGSize
let part1="my text"
let font = UIFont(name: "Arial", size: 30)
var dict = [NSFontAttributeName:font]
let size: CGSize = part1.sizeWithAttributes(dict)
在最后一行,我得到了错误"NSString与NSObject不相同"
有人能帮忙吗?
事实上,我找到了解决方案,下面是要添加的行,以使其发挥作用。
let part1="my text"
let font = UIFont(name: "Arial", size: 30)
if let fontNotNil=font {
var dict = [NSFontAttributeName:fontNotNil]
let size: CGSize = part1.sizeWithAttributes(dict)
}
尝试以下操作:
let part1: NSString = "my text"
选项都需要正确的展开"
let part1: NSString! = "my text" // For the test since we do not know the type of part1
if let font = UIFont(name: "Arial", size: 30) {
let dict = [NSFontAttributeName:font] as NSDictionary
let size: CGSize = part1.sizeWithAttributes(dict)
println("size: (size)")
}
输出:
尺寸:(96.6796875,33.515625)