Eu tenho um aplicativo em que o usuário pode escolher uma imagem nas imagens internas do aplicativo ou na biblioteca de fotos do iphone. Eu uso um objeto Ocasião que possui uma NSString
propriedade para salvar o imagePath
.
Agora, no caso das imagens de aplicativos integradas, recebo o nome do arquivo como NSString
um salvamento no arquivo [occasion imagePath]
. Mas no segundo caso em que o usuário escolhe uma imagem da biblioteca de fotos, recebo uma NSURL
que quero converter em uma NSString
para poder salvá-la [occasion imagePath
].
É possível converter o NSURL
para um NSString
?
[myUril path];
Quando eu usei caminho em vez de absoluteString ele me deu o nomeasset.jpg
você poderia apelos eelaborate mais como usar isso para carregar a imagem em uma instância UIImage?assets-library://asset/asset.JPG?id=1000000001&ext=JPG
que eu salvei convertendo o resultado[myUrl absoluteString]
depois de convertê-lo em um NSString. Aqui eu fiz essa pergunta a esse respeito, mas não obtive resposta. Eu agradeceria se você puder respondê-lo [ stackoverflow.com/questions/8085267/…assets-library
URL, e nãofile
um, é incompatível comNSFileManager
. O acesso a esses URLs é controlado estritamente porALAssetsLibrary
.Tente isso no Swift:
Objetivo-C:
fonte
myURL
é um objeto da classe NSString. Como o NSString não possuiabsoluteString
método, isso causa uma falha.Atualização rápida:
fonte
String
já que o Swift usa inferência de tipo.String
- as Diretrizes de Design Swift tentam obter o mínimo de código redundante possível.Eu apenas lutei com isso e essa atualização não funcionou.
Isso acabou acontecendo em Swift:
fonte
Você pode usar qualquer caminho
ou
fonte
Em Swift: - var str_url = yourUrl.absoluteString
Isso resultará em um URL na string.
fonte