iOS Swiftでは、アニメーションGIFをデバイスのフォトライブラリからUIImageViewに読み込んだり、.gifファイルを作成したりしています。私はそれがサーバー上のファイルまたはそれがアプリ内であればアニメーションGIFを表示するのに問題はありません。しかし、写真ライブラリからロードするとアニメーションが失われます。私はいくつかのObjective-Cソリューションを見つけ、それらをSwiftに変換しようとしましたが、運が全くありませんでした。アニメーションGIFを写真ライブラリからロードする方法
@IBAction func buttonTapped(sender: UIButton) {
selectPhoto()
}
func selectPhoto() {
let photoLibraryController = UIImagePickerController()
photoLibraryController.delegate = self
photoLibraryController.sourceType = UIImagePickerControllerSourceType.PhotoLibrary
let mediaTypes:[String] = [kUTTypeImage as String]
photoLibraryController.mediaTypes = mediaTypes
photoLibraryController.allowsEditing = false
self.presentViewController(photoLibraryController, animated: true, completion: nil)
}
// UIImagePickerControllerDelegate
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
let origImage = info[UIImagePickerControllerOriginalImage] as! UIImage
self.imageView.image = origImage
picker.dismissViewControllerAnimated(true, completion: nil)
}
最適に、私は、サーバー上のGIFファイルへの写真のライブラリの画像を保存したいと思います:ここで
は、私がこれまで持っているものです。そこから私はそれを表示するのに問題はありません。しかし、アニメーションを失うことなく、フォトライブラリからのデータをある種のプロパティに変換する助けが必要です。これにはALAssetsLibraryのようなものを使用する必要がありますか?ありがとうございました。
ここでのアプローチです。最も簡単な方法は、CocoaPodをインストールすることです。 CocoaPods - > https://www.raywenderlich.com/97014/use-cocoapods-with-swiftを使用する方法は次のとおりです。ここにObjCの別の解決策があります - > http://stackoverflow.com/a/4386709/4475605 – Adrian
ありがとう、@アドリアン。私は実際に岐阜をセットアップして試していました。それは、画像がアプリケーションにコンパイルされることを期待することを除いて、うまく動作します。それは、アプリケーションのどこか他の場所からイメージを取得するための方法を提供しません。したがって、私は写真ライブラリの画像で動作するようにはできませんでした。 – Lastmboy
メモリの使用状況とディスクからのロードを処理するGIFローディングライブラリについて、私のブログ記事を読むことができます:http://www.modejong.com/blog/post6_new_animated_gif_decoder_for_avanimator – MoDJ