我看到了这个问题的很多版本,但是我已经查看过很多版本,并且尚未找到解释我问题的方法。我希望这不是一个重复的问题。
我只是想用这个init初始化一个AVAssetWriter!文档中定义的方法:
init!(URL outputURL: NSURL!,
fileType outputFileType: String!,
error outError: NSErrorPointer)
所以我在我的操场上写了以下代码:
var err : NSError? = nil
var outputPath = "\(NSTemporaryDirectory())mypath.mov"
var url = NSURL(fileURLWithPath: outputPath)
var fileManager = NSFileManager.defaultManager()
println("The putput path is \(outputPath)")
if(fileManager.fileExistsAtPath(outputPath))
{
fileManager.removeItemAtPath(outputPath, error: &err)
println(outputPath)
if(err != nil)
{
println("Error: \(err?.localizedDescription)")
}
}
var writeInitErr : NSError? = nil
var assetWriter = AVAssetWriter(URL: url, fileType: AVMediaTypeVideo, error: writeInitErr)
但是,最后一行会引发错误"额外参数' URL'在电话"。我在其他关于此错误的问题中找到的解决方案似乎都不适用于此处。我将错误的类型传递给参数吗?我误解了初始化程序的使用吗?
答案 0 :(得分:1)
嗯,通常情况下,我在提出问题后想出答案的几分钟。
问题实际上是"错误:writeInitError"参数,应为
"error: &writeInitError"
显然,xcode错误报告存在错误,并且报告了URL参数的问题。修复错误参数解决了问题。
我认为直到错误报告得到改善,"呼叫中的额外参数"转换为"您的某个参数出现问题"。