iOS使用 CABasicAnimation 实现简单的跑马灯(无cpu暴涨)
2019/7/9 23:01:21
本文主要是介绍iOS使用 CABasicAnimation 实现简单的跑马灯(无cpu暴涨),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
网上找了几个,但都有cup暴涨的情况发生,于是利用CABasicAnimation 简单的实现一个跑马灯,实现简单,可自己定制
#import <UIKit/UIKit.h> @interface LoopView : UIView @property(nonatomic,strong)NSString *Iformation; @property(nonatomic,strong)NSString *Image; @end
#import "LoopView.h" #import "UIImageView+WebCache.h" @interface LoopView(){ UILabel *AD; UIImageView *headImage; CABasicAnimation *animation; CABasicAnimation *animationhead; } @end @implementation LoopView -(instancetype)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; if (self) { AD = [[UILabel alloc]initWithFrame:CGRectMake(28*WPSCREEN_WIDTH_RATIO, 0, self.frame.size.width, self.frame.size.height)]; [self addSubview:AD]; AD.textColor = TJXColor(146, 152, 169); AD.font = [UIFont fontWithName:@"Gotham-Book" size:12*WPSCREEN_WIDTH_RATIO]; AD.textAlignment = NSTextAlignmentLeft; headImage = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 20*WPSCREEN_WIDTH_RATIO, 20*WPSCREEN_WIDTH_RATIO)]; [self addSubview:headImage]; headImage.layer.cornerRadius = 10; headImage.layer.masksToBounds = YES; [self sssss]; [self headimage]; } return self; } -(void)setIformation:(NSString *)Iformation{ AD.text =Iformation; } -(void)setImage:(NSString *)Image{ [headImage sd_setImageWithURL:[NSURL URLWithString:Image]]; } -(void)sssss{ animation = [CABasicAnimation animationWithKeyPath:@"position"]; // 动画选项的设定 animation.duration = 2; // 持续时间 animation.repeatCount = MAXFLOAT; // 重复次数 animation.removedOnCompletion = NO; animation.autoreverses = NO; // 起始帧和终了帧的设定 animation.fromValue = [NSValue valueWithCGPoint:CGPointMake(AD.layer.position.x, 30*WPSCREEN_HIGTH_RATIO)]; // 起始帧 animation.toValue = [NSValue valueWithCGPoint:CGPointMake(AD.layer.position.x, AD.layer.position.y-20*WPSCREEN_HIGTH_RATIO)]; // 终了帧 // 添加动画 [AD.layer addAnimation:animation forKey:@"AnimationMoveY"]; // [headImage.layer addAnimation:animation forKey:@"AnimationMoveY"]; } -(void)headimage{ animationhead = [CABasicAnimation animationWithKeyPath:@"position"]; // 动画选项的设定 animationhead.duration = 2; // 持续时间 animationhead.repeatCount = MAXFLOAT; // 重复次数 animationhead.removedOnCompletion = NO; animationhead.autoreverses = NO; // 起始帧和终了帧的设定 animationhead.fromValue = [NSValue valueWithCGPoint:CGPointMake(headImage.layer.position.x, 30*WPSCREEN_HIGTH_RATIO)]; // 起始帧 animationhead.toValue = [NSValue valueWithCGPoint:CGPointMake(headImage.layer.position.x, headImage.layer.position.y-20*WPSCREEN_HIGTH_RATIO)]; // 终了帧 // 添加动画 [headImage.layer addAnimation:animationhead forKey:@"AnimationMoveY"]; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持找一找教程网。
这篇关于iOS使用 CABasicAnimation 实现简单的跑马灯(无cpu暴涨)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-12Axios库资料:新手入门必读教程
- 2024-11-11Axios库项目实战:新手入门教程
- 2024-09-29Axios库教程:初学者必备指南
- 2024-08-29Axios库资料:新手入门指南与基本使用教程
- 2024-03-14system bios shadowed
- 2024-03-14gabios
- 2024-02-07iOS应用提交上架的最新流程
- 2024-02-06打包 iOS 的 IPA 文件
- 2023-12-07uniapp打包iOS应用并通过审核:代码混淆的终极解决方案 ?
- 2023-11-25uniapp IOS从打包到上架流程(详细简单) 原创