2015-12-25 125 views
3

如何可以動畫堆疊視圖向上滑動從x=0 up to y=500開始,我有以下其中做了不斷增長的效果viewDidLoad()方法。向上滑動動畫夫特

StackView.transform = CGAffineTransformMakeScale(0.0, 0.0) 

然後我加入在viewDidAppear()方法

UIView.animateWithDuration(0.4, delay: 0.0, options: [], animations: { 
self.StackView.transform = CGAffineTransformIdentity 
}, completion: nil) 

viewDidLoad方法執行後越來越效果,堆疊視圖被最小化。當viewDidLoad方法完成時,調用viewDidAppear方法,動畫開始並且堆棧視圖開始增長。當堆棧視圖達到原始大小時,動畫停止。

儘管不是我想完成的好效果,但我希望動畫從x = 0 and stops at y = 500向上滑動我試圖在viewDidLoad中添加以下代碼以實現此效果,但仍得到相同的增長效果。有關如何完成此任務的任何建議?

StackView.transform = CGAffineTransformMakeTranslation(0, 500) 

回答

7

You're幾乎沒有只是做一些修改

// These values depends on the positioning of your element 
let left = CGAffineTransformMakeTranslation(-300, 0) 
let right = CGAffineTransformMakeTranslation(300, 0) 
let top = CGAffineTransformMakeTranslation(0, -300) 

UIView.animateWithDuration(0.4, delay: 0.0, options: [], animations: { 
     // Add the transformation in this block 
     // self.container is your view that you want to animate 
     self.container.transform = top 
}, completion: nil)