ich versuche, diese Lösung zu implementieren mehr segue Identifikatoren mit Protokoll Protocol-Oriented Segue Identifiers in Swift zu handhaben, aber ich habe diesen Fehler:Typ Viewcontroller entspricht nicht Protokoll
type 'ViewController', doesn't conform to protocol 'SegueHandlerType'
Hier ist der Code:
protocol SegueHandlerType {
associatedtype SegueIdentifier: RawRepresentable
}
extension SegueHandlerType where Self: UIViewController, SegueIdentifier.RawValue == String {
func performSegueWithIdentifier(segueIdentifier: SegueIdentifier,
sender: AnyObject?) {
performSegueWithIdentifier(segueIdentifier.rawValue, sender: sender)
}
func segueIdentifierForSegue(segue: UIStoryboardSegue) -> SegueIdentifier {
// still have to use guard stuff here, but at least you're
// extracting it this time
guard let identifier = segue.identifier,
segueIdentifier = SegueIdentifier(rawValue: identifier) else {
fatalError("Invalid segue identifier \(segue.identifier).") }
return segueIdentifier
}
}
ich kopierte/klebte die Lösung aber immer noch das gleiche Ergebnis. und das Merkwürdigste ist, dass wenn ich das Projekt vom GitHub heruntergeladen habe, es funktioniert. Das macht mich verrückt.
der Fehler:
1. Der angezeigte Code enthält keinen 'ViewController'. 2. Wo tritt der Fehler auf? – luk2302
Sory, bearbeitet ... – i6x86
@ i6x86 der Fehler Sie erhalten bedeutet, dass Sie nicht die erforderlichen Methoden und Variablen von 'SegueHandlerType' implementiert haben – kabiroberai