2013-01-17 37 views
0

我使用下面的代碼來設置一個視圖時iOS設備上取向的變化。這可以讓我看到我想要的形狀(更寬,同樣的高度),但是在改變方向時動畫會變得很刺激。如果我隱藏了setFrame代碼,動畫就非常平滑,但形狀不會變得更寬。我嘗試添加一個轉換,但到目前爲止它以不希望的方式扭曲了視圖的形狀(因爲視圖包含具有圓角的複雜繪製形狀等)。的iOS:跳躍動畫改變取向時,SETFRAME

[myView setFrame:CGRectMake(0, 0, self.view.bounds.size.width-20, 170)];  
[myView setNeedsDisplay];  
CGPoint viewCenter = CGPointMake((myView.frame.size.width/2)+someNum (self.view.bounds.size.height-(someOtherNum/2)-anotherNum));  
myView.center = viewCenter; 

//quick unsuccessful test to see if transforms would work: 
//myView.transform = CGAffineTransformScale(CGAffineTransformIdentity, 1.5, 1); 

任何幫助?有沒有辦法讓我的結果沒有跳動動畫?

感謝您的閱讀!

回答

1

你試過UIViewAnimation?

[UIView animateWithDuration:0.2 animations:^{ 
    [myView setFrame:CGRectMake(0, 0, self.view.bounds.size.width-20, 170)];  
    [myView setNeedsDisplay];  
    CGPoint viewCenter = CGPointMake((myView.frame.size.width/2) + someNum 
    (self.view.bounds.size.height-(someOtherNum/2)-anotherNum)); 
    myView.center = viewCenter; 
}];