Mam aplikację, w której użytkownik może wybrać obraz z wbudowanych obrazów aplikacji lub z biblioteki zdjęć iPhone'a. Korzystam z obiektu Okazja, która ma NSString
właściwość do zapisania imagePath
.
Teraz w przypadku wbudowanych obrazów aplikacji otrzymuję nazwę pliku jako NSString
zapis w [occasion imagePath]
. Ale w drugim przypadku, gdy użytkownik wybiera obraz z biblioteki zdjęć, otrzymuję obraz, NSURL
który chcę przekonwertować na, NSString
aby móc go zapisać [occasion imagePath
].
Czy można przekonwertować NSURL
plik na NSString
?
[myUril path];
Kiedy użyłem ścieżki zamiast absolutnegoasset.jpg
ciągnięcia, dało mi to nazwę Czy możesz prosić o bardziej szczegółowe opracowanie tego, jak to wykorzystać, aby załadować obraz do instancji UIImage?assets-library://asset/asset.JPG?id=1000000001&ext=JPG
który zapisałem, konwertując wynik[myUrl absoluteString]
po przekonwertowaniu go na NSString. Tutaj zadałem to pytanie, ale nie otrzymałem odpowiedzi. Byłbym wdzięczny, jeśli potrafisz odpowiedzieć [ stackoverflow.com/questions/8085267/...assets-library
adres URL, a niefile
jeden, jest on niezgodny zNSFileManager
. Dostęp do takich adresów URL jest ściśle kontrolowany przezALAssetsLibrary
.Wypróbuj to w Swift:
Cel C:
źródło
myURL
jest obiektem klasy NSString. Ponieważ NSString nie maabsoluteString
metody, prowadzi to do awarii.Szybka aktualizacja:
źródło
String
ponieważ Swift używa wnioskowania typu.String
- w wytycznych szybkiego projektowania staramy się uzyskać jak najmniej nadmiarowego kodu, jak to możliwe.Właśnie walczyłem z tym i ta aktualizacja nie działała.
W końcu zrobiło to w Swift:
źródło
Możesz użyć w jeden sposób
lub
źródło
W Swift: - var str_url = yourUrl.absoluteString
Spowoduje to wyświetlenie adresu URL w ciągu.
źródło