2015-10-20 11 views
6

UIImageViewに表示する* .gifファイルがあります。私はライブラリFLAnimatedImage、以下のコードを試しました。結果は静的なイメージに過ぎません。UIImageViewに* .gifファイルをすぐに表示できません

class LoginVC: UIViewController, UITextFieldDelegate { 

    @IBOutlet weak var img_popup: FLAnimatedImageView! 

    var img_popupraw: FLAnimatedImage = FLAnimatedImage(animatedGIFData: NSData(contentsOfFile: "ShitTalk_LoadingAnimation.gif")) 

    override func viewDidLoad() { 
     img_popup.animatedImage = img_popupraw 
    } 
} 

gifファイルからアニメーションgifを直接表示する別の方法があります。私はスイフトを使用しています。

+0

このライブラリをhttps://github.com/Flipboard/FLAnimatedImage –

+0

SwiftのGIF画像をロードすることができます:https://iosdevcenters.blogspot.com/2016/08/load-gif-image-in-swift_22 html –

答えて

9

SwiftGifを強くお勧めします。

インポートGif.swiftプロジェクトで、次の操作を行います。

私の場合は
// Returns an animated UIImage 
let jeremyGif = UIImage.gifWithName("jeremy") 

// Use the UIImage in your UIImageView 
let imageView = UIImageView(image: jeremyGif) 
+0

または[こちら](http://stackoverflow.com/questions/24485308/how-to-show-gif-into-uiimageview-in-swift)をチェックしてください。 –

0

私は、アプリ内のすべての画像を管理するためSDWebImageを使用しています。包括的にはsd_animatedGIFNamed FUNC

上記のコードに示すように、pod 'SDWebImage'

0
// 
// ViewController.swift 
// Loader 
// 
// Created by Pawan Kumar on 28/09/17. 
// Copyright © 2017 Pawan Kumar. All rights reserved. 
// 

import UIKit 
import FLAnimatedImage 

class ViewController: UIViewController { 

    @IBOutlet weak var animatedImageView: FLAnimatedImageView! 
// @IBOutlet weak var checkImageView: FLAnimatedImageView! 
    override func viewDidLoad() { 
     super.viewDidLoad() 


     let url = Bundle.main.path(forResource: "Loader", ofType: "gif") 
     print(url!) 

     let data=NSData(contentsOfFile: url!) 
     //print(data) 
     let fff=FLAnimatedImage(gifData: data as Data?) 
     let imageView=FLAnimatedImageView() 
     imageView.animatedImage=fff 
// 
//  imageView.frame=CGRect(x: animatedImageView.frame.minX, y: animatedImageView.frame.minY, width: animatedImageView.frame.width, height: animatedImageView.frame.height) 


     imageView.frame=CGRect(x: animatedImageView.frame.minX, y: animatedImageView.frame.minY, width: animatedImageView.frame.width, height: animatedImageView.frame.height) 

     print(imageView.currentFrameIndex) 
     imageView.clipsToBounds=true 
     self.view.addSubview(imageView) 

     // Do any additional setup after loading the view, typically from a nib. 
    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
     // Dispose of any resources that can be recreated. 
    } 




} 

ビューコントローラを作成してインストール有します。 注:ストーリーボードでイメージビューを作成するときは、イメージビューのクラスをFLanimatedImageViewとして設定します。

それが動作します。

ここでLoader.gifはGIF画像です。

関連する問題