2016-11-08 4 views
3

ich eine App zu Swift bin Migration 3 aber Xcode ist ein Fehler mit dieser Funktion zu werfen:Swift 3: Expressionsmuster vom Typ ‚Int‘ können nicht Werte vom Typ entsprechen ‚UnsafeMutableRawPointer‘

Der Fehler bei dem Fall ist, Bedingung („content“, MyObservationContext) ich tue dies für die Aktualisierung der Inhalte Größe eines UIWebView

var MyObservationContext = 0 
override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) { 
    guard let keyPath = keyPath else { 
     super.observeValue(forKeyPath: nil, of: object, change: change, context: context) 
     return 
    } 
    switch (keyPath, context) { 
    case("contentSize", MyObservationContext): 
     webviewHeightConstraint.constant = TextoHtml.scrollView.contentSize.height 
    default: 
     super.observeValue(forKeyPath: keyPath, of: object, change: change, context: context) 
    } 
} 

ich für Anregungen offen bin, danke.

Antwort

6

Der Fall muss

case("contentSize", .some(&MyObservationContext)): 

.some, um sicher sein, ist der Kontext nicht nil

& den Zeiger auf MyObservationContext bekommt so kann er einen Zeiger auf einen Zeiger vergleichen.

+0

Danke Mann, ich nur testen, das ich perfekt funktioniert! – Strider

Verwandte Themen