を設定するとき、私はこのエラーを取得しています:ここでスウィフト:型の値を<変換することはできません>期待される引数の型を<>セレクタ
cannot convert value of type nsdictionary to expected argument type string
let json:NSDictionary = try JSONSerialization.jsonObject(with: dataResponse, options: []) as! NSDictionary
self.performSelector(onMainThread: Selector(updateUIwithJsonResponse), with: json, waitUntilDone: true)
func updateUIwithJsonResponse(json:NSDictionary) {
print(json)
}
:
performSelector
は、この関数を呼び出しています
なぜこのエラーが発生するのですか?
1を試してみてくださいなぜあなたは 'NSDictionary'の代わりに、スウィフトの辞書を使用していますか? 2.なぜあなたは 'DispatchQueue'の代わりに' performSelector'を使用していますか? – rmaddy
@rmaddy、私はキューを必要としないので。なぜDispatchQueueを使うのが良いと思いますか? – user2924482
'DispatchQueue.main.async'を使用する方がずっとシンプルでクリーンです。ブロック内に実際のコードを書くことができます。セレクタを使いこなす必要はなく、任意の数とタイプのパラメータで動作します。 – rmaddy