我得到的错误
表达式的类型是不明确的,没有更多的上下文
<form action="signatory.php" method="Post" role="form">
<input class="form-control " id="signatoryname" name="sig_name" placeholder="Name:" >
<input class="form-control " id="signatoryoffice" name="sig_office" placeholder="Office:">
</form>
&#39; stringByAppendingPathComponent&#39;不可用:使用 而是在NSURL上的ByAppendingPathComponent。
var recordSettings = [AVFormatIDKey : kAudioFormatAppleLossless,
AVEncoderAudioQualityKey : AVAudioQuality.Max.rawValue,
AVEncoderBitRateKey : 320000,
AVNumberOfChannelsKey : 2,
AVSampleRateKey : 44100.0 ]
无法强制解包非可选类型的值&#39; NSURL&#39; 错误说 - &gt;参数标签&#39;(contentsOfURL:,错误:)&#39;不符合 任何可用的重载。
func getFileURL() -> NSURL {
let path = getCacheDirectory().stringByAppendingPathComponent(fileName)
let filePath = NSURL(fileURLWithPath: path)
return filePath!
答案 0 :(得分:1)
好吧,编译器正在告诉你到底出了什么问题。
例如:
我得到的错误说“没有更多上下文的表达类型是模棱两可的”
var recordSettings = [AVFormatIDKey : kAudioFormatAppleLossless, AVEncoderAudioQualityKey : AVAudioQuality.Max.rawValue, AVEncoderBitRateKey : 320000, AVNumberOfChannelsKey : 2, AVSampleRateKey : 44100.0 ]
recordSettings
的类型在没有更多上下文的情况下是模糊的。这意味着编译器不确定recordSettings
的类型应该是什么......你需要告诉它。像这样:
var recordSettings: [String: AnyObject] = [AVFormatIDKey : kAudioFormatAppleLossless, AVEncoderAudioQualityKey : AVAudioQuality.Max.rawValue, AVEncoderBitRateKey : 320000, AVNumberOfChannelsKey : 2, AVSampleRateKey : 44100.0 ]
而且:
'stringByAppendingPathComponent' is unavailable: Use ByAppendingPathComponent on NSURL instead.
上述意思正是它所说的。方法stringByAppendingPathComponent
不可用,您应该在byAppendingPathComponent
上使用NSURL
。
而且:
Cannot Force unwrap value of non-optional type 'NSURl'
同样,它意味着它所说的。您无法强行打开非可选类型。 “强制解包”意味着将!
放在变量的末尾。
编译器正试图帮助您编写正确的代码。