自分のサイトにあるGIFアニメをswiftで再生させたくていろいろ調べた結果、UIImageViewでGIFの再生機能がないことがわかりました。それでUIWebViewで表示しようと頑張ってみたんですがなぜかうまくいきません、、、
func hoge(){ guard let filePath = NSBundle.mainBundle().pathForResource("fractal", ofType: "gif"), let gifData = NSData(contentsOfFile: filePath) else { return } let webViewBG = UIWebView() webViewBG.frame = CGRectMake(0, 0, 100, 100) webViewBG.loadData(gifData, MIMEType: "image/gif", textEncodingName: "utf-8", baseURL: NSURL(string: "GIF画像があるURL")!) self.view.addSubview(webViewBG) }
あ、ちなみにGifアニメがあるWebgWeb画面をそのまま表示することは以下のようにしたら一応できます
func hoge(){ let myImageView = WKWebView(frame: CGRectMake(0, 0, 100, 100)) let myURL=NSURL(string: "GIF画像があるURL") let myURLRequest=NSURLRequest(URL: myURL!) myImageView.loadRequest(myURLRequest) //なんとかページ全体ではなく、画像だけを表示したくて以下のように書いたが、変わりはなかった myImageView.sizeToFit() myImageView.contentMode = UIViewContentMode.ScaleAspectFit myImageView.clipsToBounds = true self.view.addSubview(myImageView) }
でも上のように書いてしまうとUIImageIVew()のように画像だけを表示してくれるのではなく、ページ全体を表示してしまうので余分な白い余白が入ってしまいます、、、
それで参考にしたサイトが以下になります
https://sites.google.com/a/gclue.jp/swift-docs/ni-yinki100-ios/uikit/fairuno-biao-shi
http://d.hatena.ne.jp/kanotomo/20081229/1230509030
もうこれで何週間も詰まってます(>.<)
できる方がいらっしゃったら、ぜひ知恵を貸してください!
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。