2016-12-20 10 views
-1

По какой-то причине UIProgressView.setProgress(1, animate: true) вызывает появление перепутанной анимации. На рисунке ниже показана проблема. Во-первых, он оживляет от центра наружу и начинает немного над своим фактическим местоположением. enter image description hereUIProgressView setProgress анимация перепутана

Так вот полный вид контроллер код, который содержит UIProgressView

import UIKit 

class ViewController: UIViewController { 

    @IBOutlet weak var progressBar: UIProgressView! 

    override func viewDidLoad() { 
     super.viewDidLoad() 
     progressBar.setProgress(1, animated: true) 
    } 
} 
+0

Я не могу понять, что не так –

+1

Что делать, если вы дождитесь полной загрузки представления? Вызов 'progressBar.setProgress (1, анимированный: true)' в 'viewDidAppear' – Randy

+1

Кадр будет установлен неправильно в' viewDidLoad'; дождитесь появления 'viewDidAppear' или' viewDidLayoutSubviews'. Вы также можете решить проблему, если у вас есть фиксированная ширина для вашего прогресса. – Paulw11

ответ

0

Проблема заключалась в setProgress называли в viewDidLoad, которые перепутались его. Его нужно было вызвать в другом методе, который вызывается после полной загрузки представления, такого как viewDidAppear, как было предложено Paulw11 и Randy