国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

詳解IOS圖層轉場動畫

2020-07-26 03:28:00
字體:
來源:轉載
供稿:網友

CAAnimation的子類,用于做轉場動畫,能夠為層提供移出屏幕和移入屏幕的動畫效果。iOS比Mac OS X的轉場動畫效果少一點
UINavigationController就是通過CATransition實現了將控制器的視圖推入屏幕的動畫效果
屬性解析:

  • type:動畫過渡類型
  • subtype:動畫過渡方向
  • startProgress:動畫起點(在整體動畫的百分比)
  • endProgress:動畫終點(在整體動畫的百分比)

具體代碼:

/* 過渡效果 fade   //交叉淡化過渡(不支持過渡方向) kCATransitionFade push   //新視圖把舊視圖推出去 kCATransitionPush moveIn  //新視圖移到舊視圖上面  kCATransitionMoveIn reveal  //將舊視圖移開,顯示下面的新視圖 kCATransitionReveal cube   //立方體翻滾效果 oglFlip //上下左右翻轉效果 suckEffect  //收縮效果,如一塊布被抽走(不支持過渡方向) rippleEffect //滴水效果(不支持過渡方向) pageCurl   //向上翻頁效果 pageUnCurl  //向下翻頁效果 cameraIrisHollowOpen //相機鏡頭打開效果(不支持過渡方向) cameraIrisHollowClose //相機鏡頭關上效果(不支持過渡方向)*/  /* 過渡方向 kCATransitionFromRight kCATransitionFromLeft kCATransitionFromBottom//轉場動畫--》是針對某個view的圖層進行轉場動畫#import "ViewController.h"#import <QuartzCore/QuartzCore.h>@interface ViewController (){  UIView *_lastview;  BOOL flag;}@end@implementation ViewController- (void)viewDidLoad{  [super viewDidLoad];  flag=true;  UIView *view=[[UIView alloc] initWithFrame:CGRectMake(100, 100, 200, 200)];  view.backgroundColor=[UIColor redColor];  [self.view addSubview:view];  [view release];  _lastview=view;  // Do any additional setup after loading the view, typically from a nib.}-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{  if(flag){    _lastview.backgroundColor=[UIColor yellowColor];    flag=false;    }  else{    _lastview.backgroundColor=[UIColor redColor];    flag=true;  }    //轉場動畫--就是對某個view進行動畫切換。  //1:如果是控制器之間的切換,其實window上view進行切換  CATransition *transion=[CATransition animation];  //設置轉場動畫的類型  transion.type=@"pageCurl";  //設置轉場動畫的方向  transion.subtype=@"fromLeft";    //把動畫添加到某個view的圖層上  [self.view.layer addAnimation:transion forKey:nil];  }

 控制器直接切換動畫

 UIApplication *app=[UIApplication sharedApplication];  AppDelegate *dd=app.delegate;      MyViewController *my=[[MyViewController alloc] init];  //切換根控制器,其實把視圖控制器的view在window上切換。所以在轉場動畫要作用在window上  dd.window.rootViewController=my;  CATransition *trans=[CATransition animation];    trans.type=@"pageCurl";  trans.subtype=@"fromTop";    [dd.window.layer addAnimation:trans forKey:nil];    [my release];

以上就是本文的全部內容,希望對大家的學習有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 绥棱县| 南木林县| 虎林市| 龙南县| 永康市| 山丹县| 文登市| 永登县| 台北县| 正蓝旗| 十堰市| 山阳县| 宜丰县| 青河县| 峡江县| 鄂州市| 锡林郭勒盟| 内乡县| 本溪市| 房山区| 射洪县| 呼玛县| 卓资县| 延寿县| 海南省| 天峻县| 图木舒克市| 防城港市| 阿巴嘎旗| 和顺县| 上思县| 邮箱| 绥滨县| 武城县| 彰武县| 沭阳县| 惠来县| 邹平县| 积石山| 拉萨市| 喜德县|