2016-10-22 2 views
0

Я пытаюсь загрузить последовательность изображений в анимации. Я храню эти изображения в активах (до spinner42 Spinner1) и поэтому я использую:UIImage.animatedImageNamed возвращает nil

@IBOutlet weak var imageView: WKInterfaceImage! 
    override func didAppear() { 
     super.didAppear() 
     let animatedImage = UIImage.animatedImageNamed("spinner", duration: 10) 
     imageView.setImage(animatedImage) 
    } 
} 

Но я всегда возвращал ноль изображение. Если я устанавливаю spinner1, я использую изображение, но без анимации. Каков правильный способ анимации изображения на WatchKit?

+0

код обновляется ... – Joe

ответ

0

Попробуйте этот код: Испытано в Swift 3

@IBOutlet var imageView: WKInterfaceImage! 
    override func awake(withContext context: Any?) { 
    super.awake(withContext: context) 

    imageView.setImageNamed("earth") // earth is the image set I'm using for animation. 

    // Use this for Default Settings 
    // imageView.startAnimating() 

    imageView.startAnimatingWithImages(
     in: NSRange(location: 0, length: 40), 
     duration: 7, 
     repeatCount: 1) 
} 

Примечание: Изображение set Я использую для проверки кода, найденного по этой ссылке http://www.ebookfrenzy.com/watchkit/animation_images.zip вы можете использовать это изображение для проверки ...

Выход:

enter image description here

+1

Возможно, это не было достаточно ясно, что мне нужно, чтобы показать анимацию в WatchKit, и в этой структуре WKInterfaceImage не хватает анимации и анимации. –

+0

Я думал. он мог бы работать на watchKit framework .. я вижу. Спасибо за то, что сообщили мне ... – Joe

+0

Я сделал код. я скоро загружу ... ура – Joe

0

Это так, как я это сделать:

self.imageProgress.setImageNamed("progress") 
    self.imageProgress.startAnimatingWithImagesInRange(NSRange(location:0, length: intPercentageDone), duration: 0.5, repeatCount: 1) 

У меня есть куча изображений, называемых "progress1", "progress2" ... до "progress100"

intPercentageDone целое значение анимировать до, например, Я хочу, чтобы анимировать изображения 1-60, если intPercentageDone 60

Полный код на GitHub в https://github.com/bravelocation/daysleft/blob/master/daysleft%20WatchKit%20Extension/InterfaceController.swift

0

Что касается также обновленного ответа от Джо правильного кода я использовал это:

@IBOutlet weak var imageView: WKInterfaceImage! 
override func didAppear() { 
    super.didAppear() 
    imageView.setImageNamed("spinner") 
    imageView.startAnimatingWithImages(in:NSRange(location:1, length: 41), duration: 2, repeatCount: 0) 
} 
Смежные вопросы