Iphone NSStringDrawingUserLineFragmentOrigin未解决?

Iphone NSStringDrawingUserLineFragmentOrigin未解决?,iphone,swift,Iphone,Swift,我正在Xcode 6.1中开发一个针对iOS>=7的Swift应用程序,无法使用NSStringDrawingUserLineFragmentOrigin,因为它无法解决。我在谷歌上搜索过它,但我发现的都是使用它的例子,显然没有问题。苹果网站上的最新文件显示它是有效的。有没有人遇到/解决过同样的问题 编辑: 我昨天尝试过NSStringDrawingOptions.UsesLineFragmentOrigin(谢谢Matt),但它只在目标上下文设置为nil时起作用。昨天,当我传递一个有效的上下文

我正在Xcode 6.1中开发一个针对iOS>=7的Swift应用程序,无法使用NSStringDrawingUserLineFragmentOrigin,因为它无法解决。我在谷歌上搜索过它,但我发现的都是使用它的例子,显然没有问题。苹果网站上的最新文件显示它是有效的。有没有人遇到/解决过同样的问题

编辑: 我昨天尝试过NSStringDrawingOptions.UsesLineFragmentOrigin(谢谢Matt),但它只在目标上下文设置为nil时起作用。昨天,当我传递一个有效的上下文时,我在“选项”中传递的任何内容都显示为未解决。奇怪的是,今天如果我传递一个有效的上下文,编译器会给我一个不同的错误--“NSString与NSObject不相同”在我的字体属性上!我想知道这是否只是Swift编译器中的一些奇怪的错误?无论如何,下面是最终编译的代码:

    var textStyle = NSMutableParagraphStyle.defaultParagraphStyle().mutableCopy() as NSMutableParagraphStyle
    textStyle.alignment = NSTextAlignment.Left

    let fontAttributes = [
        NSFontAttributeName: UIFont(name: "Georgia", size: tileSize * CLUES_FONT_SCALE)!,
        NSForegroundColorAttributeName: UIColor.blackColor(),
        NSParagraphStyleAttributeName: textStyle
    ]

    size = text.boundingRectWithSize(
        CGSize(width: width, height: 1000),
        options: NSStringDrawingOptions.UsesLineFragmentOrigin,
        attributes: fontAttributes,
        context: nil
    )
请注意,如果我替换:

NSStringDrawingOptions.UsesLineFragmentOrigin


如Apple文档所示,我得到了“使用未解析标识符”。

我刚刚启动了Xcode 6.1,创建了一个部署目标为iOS 7.0的Swift iOS项目,并将以下代码粘贴到我的应用程序的
didFinishLaunchingWithOptions

let attrib_string = NSAttributedString(string: "Foo")
let rect = attrib_string.boundingRectWithSize(
    CGSize(width: 100, height: 100),
    options: .UsesLineFragmentOrigin,
    context: nil)
println(rect)
它编译、链接并运行良好,并将结果打印到控制台:

(0.0,0.0,20.6777,13.8)

您可能需要编辑您的问题以提供完整的示例,以及您收到的确切错误消息。我看不到任何奇怪的东西;使用完全限定的枚举值
NSStringDrawingOptions.UsesLineFragmentOrigin
也很好。

我刚刚启动了Xcode 6.1,创建了一个部署目标为iOS 7.0的Swift iOS项目,并将以下代码粘贴到我的应用程序的
DiFinishLaunchingWithOptions

let attrib_string = NSAttributedString(string: "Foo")
let rect = attrib_string.boundingRectWithSize(
    CGSize(width: 100, height: 100),
    options: .UsesLineFragmentOrigin,
    context: nil)
println(rect)
它编译、链接并运行良好,并将结果打印到控制台:

(0.0,0.0,20.6777,13.8)

您可能需要编辑您的问题以提供完整的示例,以及您收到的确切错误消息。我看不到任何奇怪的东西;使用完全限定的枚举值
NSStringDrawingOptions.UsesLineFragmentOrigin
也很好。

我刚刚启动了Xcode 6.1,创建了一个部署目标为iOS 7.0的Swift iOS项目,并将以下代码粘贴到我的应用程序的
DiFinishLaunchingWithOptions

let attrib_string = NSAttributedString(string: "Foo")
let rect = attrib_string.boundingRectWithSize(
    CGSize(width: 100, height: 100),
    options: .UsesLineFragmentOrigin,
    context: nil)
println(rect)
它编译、链接并运行良好,并将结果打印到控制台:

(0.0,0.0,20.6777,13.8)

您可能需要编辑您的问题以提供完整的示例,以及您收到的确切错误消息。我看不到任何奇怪的东西;使用完全限定的枚举值
NSStringDrawingOptions.UsesLineFragmentOrigin
也很好。

我刚刚启动了Xcode 6.1,创建了一个部署目标为iOS 7.0的Swift iOS项目,并将以下代码粘贴到我的应用程序的
DiFinishLaunchingWithOptions

let attrib_string = NSAttributedString(string: "Foo")
let rect = attrib_string.boundingRectWithSize(
    CGSize(width: 100, height: 100),
    options: .UsesLineFragmentOrigin,
    context: nil)
println(rect)
它编译、链接并运行良好,并将结果打印到控制台:

(0.0,0.0,20.6777,13.8)

您可能需要编辑您的问题以提供完整的示例,以及您收到的确切错误消息。我看不到任何奇怪的东西;使用完全限定的枚举值
NSStringDrawingOptions.UsesLineFragmentOrigin
也可以很好地工作。

您会发现什么错误,您能发布一个完整的小复制吗?我刚刚在操场上输入了一些代码,可以很好地进行编译。然后我将它粘贴到我正在开发的实际应用程序中,它仍然编译并链接良好。但我在黑暗中有些磕磕绊绊,除非你能告诉我你到底失败了什么…我认为那误导性的错误信息是一个编译器错误。Swift中有很多这样的类型,一个不正确的参数值会导致一个错误,表面上与另一个非常好的参数相关。(另外,如果你现在已经解决了问题,你可能应该把它作为你自己问题的答案发布,并接受它……)你会发现什么错误,准确地说,你能发布一个完整的小复制品吗?我刚刚在操场上输入了一些代码,可以很好地进行编译。然后我将它粘贴到我正在开发的实际应用程序中,它仍然编译并链接良好。但我在黑暗中有些磕磕绊绊,除非你能告诉我你到底失败了什么…我认为那误导性的错误信息是一个编译器错误。Swift中有很多这样的类型,一个不正确的参数值会导致一个错误,表面上与另一个非常好的参数相关。(另外,如果你现在已经解决了问题,你可能应该把它作为你自己问题的答案发布,并接受它……)你会发现什么错误,准确地说,你能发布一个完整的小复制品吗?我刚刚在操场上输入了一些代码,可以很好地进行编译。然后我将它粘贴到我正在开发的实际应用程序中,它仍然编译并链接良好。但我在黑暗中有些磕磕绊绊,除非你能告诉我你到底失败了什么…我认为那误导性的错误信息是一个编译器错误。Swift中有很多这样的类型,一个不正确的参数值会导致一个错误,表面上与另一个非常好的参数相关。(另外,如果你现在已经解决了问题,你可能应该把它作为你自己问题的答案发布,并接受它……)你会发现什么错误,准确地说,你能发布一个完整的小复制品吗?我刚刚在操场上输入了一些代码,可以很好地进行编译。然后我将它粘贴到我正在开发的实际应用程序中,它仍然编译并链接良好。但我在黑暗中有些磕磕绊绊,除非你能告诉我你到底失败了什么…我认为那误导性的错误信息是一个编译器错误。Swift中有很多这样的类型,一个不正确的参数值会导致一个错误,表面上与另一个非常好的参数相关。(此外,如果您现在已经解决了问题,您可能应该将其作为您自己问题的答案发布并接受……)