苹果开发 笔记(25)CATransition
来源:互联网 发布:excel调用数据图表 编辑:程序博客网 时间:2024/06/05 00:15
今天继续练习动画方面,了解一下CATransition 方面用法。不知道大家有没有发现学ios的时候,有一个很怪现象,在学一段时间很容易忘记了自己写过的东西,过一段时间后又会把前几个星期写的程序都忘记了。这种有点像你吞了一个物体,它在反抗你。
这个练习就是试每一个CATransition的效果是怎样的,顺便看一下UIPickerView 是怎么一回事。他的代理方式类似 TableView,这个代理模式用到场景太多了,有时候多少会觉得罗嗦一点。写熟悉了也没所谓了。
切换后,这个程序就可以看到每一个效果情况了。唯一个kCATransitionFade 这个情况不知道发生什么事,没看到什么效果存在。
UIKit 组件众多,每一个尝试一下都要花一点时间。虽然社区和文档都很成熟,很多有价值的blog 都有相应的解答。这些资源相当宝贵。 有时候还是需要尝试一下断网开发才行,至少这样才可以训练一下找文档的能力。现在每次百度找答案有时候有时候觉得自己开始会变笨了。尽管找问题能力很棒,解决问题就弱化了。
#import <UIKit/UIKit.h>@interface ViewController : UIViewController <UIPickerViewDataSource,UIPickerViewDelegate>//创建一个选择器@property (nonatomic,strong) UIPickerView *pickerView;@end
#import "ViewController.h"@interface ViewController (){ NSArray *pickerArray; NSArray *typeArray; UIImageView *imageView;}@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. pickerArray = @[@"kCATransitionFade", @"pageCurl", @"pageUnCurl", @"rippleEffect", @"suckEffect", @"cube", @"oglFlip", @"MoveIn+kCATransitionFromRight", @"MoveIn+kCATransitionFromLeft", @"MoveIn+kCATransitionFromTop", @"MoveIn+kCATransitionFromBottom", @"Push+kCATransitionFromRight", @"Push+kCATransitionFromLeft", @"Push+kCATransitionFromTop", @"Push+kCATransitionFromBottom", @"Reveal+kCATransitionFromRight", @"Reveal+kCATransitionFromLeft", @"Reveal+kCATransitionFromTop", @"Reveal+kCATransitionFromBottom" ];// pageCurl 向上翻一页// pageUnCurl 向下翻一页// rippleEffect 滴水效果// suckEffect 收缩效果,如一块布被抽走// cube 立方体效果// oglFlip 上下翻转效果 typeArray = @[ @[kCATransitionFade], @[@"pageCurl"], @[@"pageUnCurl"], @[@"rippleEffect"], @[@"suckEffect"], @[@"cube"], @[@"oglFlip"], @[kCATransitionMoveIn,kCATransitionFromRight], @[kCATransitionMoveIn,kCATransitionFromLeft], @[kCATransitionMoveIn,kCATransitionFromTop], @[kCATransitionMoveIn,kCATransitionFromBottom], @[kCATransitionPush,kCATransitionFromRight], @[kCATransitionPush,kCATransitionFromLeft], @[kCATransitionPush,kCATransitionFromTop], @[kCATransitionPush,kCATransitionFromBottom], @[kCATransitionReveal,kCATransitionFromRight], @[kCATransitionReveal,kCATransitionFromLeft], @[kCATransitionReveal,kCATransitionFromTop], @[kCATransitionReveal,kCATransitionFromBottom] ]; imageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"bbg.jpg"]]; [self.view addSubview:imageView]; //选择器 self.pickerView =[[UIPickerView alloc]init]; [self.view addSubview:self.pickerView]; self.pickerView.frame =(CGRect){0,self.view.frame.size.height-180+20,320,180}; self.pickerView.delegate = self; self.pickerView.dataSource = self; self.pickerView.backgroundColor = [UIColor orangeColor];}// returns the number of 'columns' to display.- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{ return 1;}// returns the # of rows in each component..- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{ return [pickerArray count];}-(NSString *) pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{ return [pickerArray objectAtIndex:row];}- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{ NSArray *typeTempArray =typeArray[row]; CATransition *transaction =[CATransition animation] ; if ([typeTempArray count] ==1) { transaction.type = typeTempArray[0] ; transaction.duration = 1; } else { transaction.type = typeTempArray[0]; transaction.subtype = typeTempArray[1]; transaction.duration = 1; } [imageView.layer addAnimation:transaction forKey:nil];}- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}@end
0 0
- 苹果开发 笔记(25)CATransition
- 苹果开发 笔记(1)
- 苹果开发 笔记(2)
- 苹果开发 笔记(3)
- 苹果开发 笔记(4)
- 苹果开发 笔记(9)
- 苹果开发 笔记(10)
- 苹果开发 笔记(13)
- 苹果开发 笔记(14)
- 苹果开发 笔记(15)
- 苹果开发 笔记(16)
- 苹果开发 笔记(17)
- 苹果开发 笔记(18)
- 苹果开发 笔记(19)
- 苹果开发 笔记(20)
- 苹果开发 笔记(21)
- 苹果开发 笔记(22)
- 苹果开发 笔记(23)
- HorizontalScrollView实现Gallery效果,可滑到最后项且点击可滑动到相应位置
- JSoup 代码总结
- win8 64位Emgu.CV.CvInvoke”的类型初始值设定项引发异常
- 函数重载
- 如何使用Ubuntu手机平台中的照相机API来存储照片
- 苹果开发 笔记(25)CATransition
- csu 1619 Con + tin / (ued + Frac / tions)
- IOS开发完整学习路线图
- php获取url
- win8全新安装wampserver数据库管理phpmyadmin显示forbidden 403错误 的解决方法
- 两种初始化参数文件
- iOS 图片加载 圆形进度条
- android使用http协议实现多线程断点下载
- 利用Facebook登录应用的方法