2016-05-18 10 views
8

mam problem z kodem, który rzucić kolejną wiadomość:nie można przekonwertować wartości typu „string”, aby wpisać „NSString” w przymusu podczas korzystania samodzielne swift2 z Ubuntu 16.04

error: cannot convert value of type 'String' to type 'NSString' in coercion 
      return (self as NSString).substringWithRange(range) 

mogę go rozwiązać wcześniej, ale nie z powołania siebie, więc oto kod:

let range = expression.rangeOfFirstMatchInString(self, options: [], range: NSMakeRange(0, self.utf16.count)) 
    if range.location != NSNotFound { 
     return (self as NSString).substringWithRange(range) 
    } 
    return nil 
+1

Spróbuj 'powrócić NSString (string: self) ...' –

+0

Tak, to działa, dzięki :) –

Odpowiedz

9

Szybkie kompilator w Ubuntu nie będzie automatycznie rozpoznać, że NSString ma konstruktora, który pobiera String jako argument. (W czasie kompilacji kompilator interpretuje go)

Zamiast wykonywać pracę przez siebie pisząc

NSString(string: self) 
Powiązane problemy