你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> IOS開發筆記UIView使用animateWithDuration控制頁面效果

IOS開發筆記UIView使用animateWithDuration控制頁面效果

編輯:IOS開發綜合

引言:最近學習了一些頁面的跳轉動畫效果。使用的是UIview的animateWithDuration方法。當然之前的beginAnimations也是可以實現的。

 

比如一:從屏幕下部往上漸漸彈出一個圖片


[plain] 
-(void) fadeIn 
{    
    CGRect rect = [[UIScreen mainScreen] bounds]; 
      self.view.center = CGPointMake(rect.size.width/2, 720); 
    [UIView animateWithDuration:0.5f animations:^{ 
         self.view.center = CGPointMake(rect.size.width/2, 240+10);   
    } completion:^(BOOL finished) { 
     //   [imageView setImageURL:[NSURL URLWithString:imgUrl]]; 
    }]; 


比如二:再漸漸退回去

[plain] 
-(void) fadeOut 

    CGRect rect = [[UIScreen mainScreen] bounds]; 
    [UIView animateWithDuration:0.5f animations:^{ 
        self.view.center = CGPointMake(rect.size.width/2, 720); 
    } completion:^(BOOL finished) { 
        [imageView cancelImageLoad]; 
        [imageView release]; 
        //[imgUrl release]; 
       // imageView = nil; 
        //imgUrl = nil; 
       // [self.view removeFromSuperview]; 
    }]; 

如果使用beginAnimations就是下面這樣的。。。。

[plain]
   CGRect rect = [[UIScreen mainScreen] bounds]; 
   self.myimg.center = CGPointMake(rect.size.width/2, 720); 
   [UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationDuration:1.0]; 
 
self.myimg.center = CGPointMake(rect.size.width/2, 720);  
 
[UIView commitAnimations]; 


備注:其實掌握了  self.view.center = CGPointMake(rect.size.width/2, 240+10);
設置其中心點坐標即可。


下面是可以設置動畫效果的屬性:

frame
bounds
center
transform
alpha
backgroundColor
contentStretch

例如一個視圖淡出屏幕,另外一個視圖出現的代碼:

[UIView animateWithDuration:1.0 animations:^{
        firstView.alpha = 0.0;
        secondView.alpha = 1.0;
}];
completion為動畫執行完畢以後執行的代碼塊
options為動畫執行的選項。可以參考這裡
delay為動畫開始執行前等待的時間

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved