【问题标题】:NSURL "missing argument for parameter in call" SwiftNSURL“调用中的参数缺少参数”Swift
【发布时间】:2014-10-13 13:41:27
【问题描述】:

我同时使用 obj-c 和 swift 类。在一节 swift 课上,我尝试将目标 c 代码转换为 swift。但是,我有一个关于 NSURL 的问题。

原代码为:

NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@://", appItem.URLSchema]];

并且 URLSchema 在头文件中声明如下:

@property (nonatomic, copy) NSString *URLSchema;

我将上面的目标c代码转换为swift:

var url: NSURL = NSURL(string:"%@://",relativeToURL: appItem.URLSchema)

但它说“调用中参数“路径”的参数缺失”

当我尝试这个时:

var url: NSURL = NSURL.URLWithString("%@://", appItem.URLSchema)

它在调用中表示额外的参数。

你建议如何正确转换它?

【问题讨论】:

    标签: ios objective-c swift nsurl


    【解决方案1】:

    第二个参数:RelativeToURL 的类型为 NSURL,你传递一个字符串

    试试这个:

    var url:NSURL = NSURL(string: "\(appItem.URLSchema)://")
    

    有关更多信息,您可以查看“Swift 编程语言”iBook 中的“字符串插值”部分。

    字符串插值是一种从 常量、变量、文字和表达式的混合,包括 它们在字符串文字中的值。您插入的每个项目 字符串文字包含在一对括号中,前缀为 反斜杠

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-16
      • 1970-01-01
      • 1970-01-01
      • 2015-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-25
      相关资源
      最近更新 更多