2016-11-11 4 views
0

Я пытаюсь сделать фон моего приложения анимированным gif. Это мой код, я получаю ошибку «exc_bad_instruction» для этой строки: images.append (UIImage (named: imageNames [i])!)Анимированный GIF как фон в Swift

Не понимаю, в чем проблема. Вот код:

var imageNames = ["tmp-0.gif", "tmp-1.gif", "tmp-2.gif", "tmp-3.gif", "tmp-4.gif", "tmp-5.gif", "tmp-6.gif", "tmp-7.gif", "tmp-8.gif", "tmp-9.gif", "tmp-10.gif", "tmp11.gif", "tmp-12.gif", "tmp-13.gif", "tmp-14.gif", "tmp-15.gif", "tmp-16.gif", "tmp-17.gif", "tmp-18.gif", "tmp-19.gif"] 

    var images = [UIImage]() 

    for i in 0..<imageNames.count{ 
     images.append(UIImage(named: imageNames[i])!) 

    } 

    theGif.animationImages = images 
    theGif.animationDuration = 1.0 
    theGif.startAnimating() 
+0

Что регистрируется на консоли? Скорее всего, 'UIImage (named:)' возвращает 'nil'. – NobodyNada

+0

Убедитесь, что gif все включены в цель (флажки должны быть отмечены в правой панели инструментов), и вы все правильно указали. – keithbhunter

+0

@keithbhunter Как включить gifs в цель –

ответ

1

Если вы планируете использовать анимированный GIF для фона, вместо того, чтобы пытаться разъединить все кадры в формате GIF и используя возможности анимации из UIImageView, я бы рекомендовал использовать анимированную GIF-библиотеку.

Flipboard's FLAnimatedImage library, по-видимому, один из самых популярных (я не использовал его лично, поэтому не могу сказать точно). Это Objective-C, но он должен взаимодействовать с Swift без проблем.