スウィフト3には、のメソッドには常にエラーがあります。以下のコードではif annotation is MKAnnotation
が渡され、次の行に進みます。その後、エラーが発生します。私は多くを検索しましたが、問題を見つけることができませんでした。この問題の解決策はありますか?XXの値を即時にXXにキャストできませんでした3
クラスの宣言:
open class FBAnnotation : NSObject {
open var coordinate = CLLocationCoordinate2D(latitude: 52.0936440, longitude: 4.3592340)
open var title: String? = ""
open var annotationIndex: Int?
}
extension FBAnnotation : MKAnnotation {
}
使用法:これは運動場で働く
do {
if annotation is MKAnnotation {
if try node.annotations.contains(where: annotation as! (MKAnnotation) throws -> Bool) {
try node.annotations.remove(at: node.annotations.index(where: annotation as! (MKAnnotation) throws -> Bool)!)
node.count -= 1
return true
}
}
} catch {
return false
}
ノードはどのタイプですか?また、** is **の代わりに、注釈をアンラップするために**を使用すると**を使用できます:** let注釈=注釈をlet? MKAnnotation {** –