在移动应用开发中,如果两张图片之间直接进行切换,会显得突兀,用户体验不佳。如果中间能有淡入淡出效果,就会很不错。我们就用CALayer来实现一下:
(1)拖入2张图片,然后代码实现如下:
#import "ViewController.h"
@interface ViewController ()
@property(nonatomic,strong) CALayer *imageLayer;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
UIImage *image1 = [UIImage imageNamed:@"img1"];
//创建出图片layer;
self.imageLayer = [CALayer layer];
self.imageLayer.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height);
[self.view.layer addSublayer:self.imageLayer];
self.imageLayer.contents = (__bridge id)(image1.CGImage);
[self performSelector:@selector(layerAnimation) withObject:nil afterDelay:3.0f];
}
- (void) layerAnimation{
UIImage *image2 = [UIImage imageNamed:@"img2"];
//图片动画;