我正在创建一个非常简单的应用程序,它使用UIWebView显示可以放大,平移等的pdf地图。
但是,在为pdf创建目标网址时,pathForResource调用无法正常工作。这是我的代码:
var targetURL : NSURL = NSBundle.mainBundle().pathForResource(filename, ofType: type)
我在“filename”之前的括号中出现错误,即Missing argument for parameter 'inDirectory' in call
。我尝试为此添加一个参数:
var targetURL : NSURL = NSBundle.mainBundle().pathForResource(filename, ofType: type, inDirectory: "Map")
我不知道要为inDirectory
放什么,因为我不知道目录是什么 - 我将文件添加到我的项目中,它与我的ViewController.swift文件位于同一个文件夹中。无论如何,它确实无关紧要,因为我在同一个地方Extra argument 'inDirectory in call
收到以下错误。
我该怎么办?
答案 0 :(得分:4)
pathForResource()
不会返回NSURL
个对象,而是String?
。相应地声明你的变量,它应该有效。
var targetURL : String? = NSBundle.mainBundle().pathForResource(filename, ofType: type)
或者,当然,如果您愿意 - 只需使用URLForResource()
。
var targetURL : NSURL? = NSBundle.mainBundle().URLForResource(filename, withExtension: type)
答案 1 :(得分:0)
我遇到了同样的问题。在我的情况下,这是因为我的变量(在你的情况下type
)需要打开。添加一个爆炸!
使错误消失并使代码执行。