下面是这个动画的gif图
CALayer篇:
不知道该给这个动画叫什么...就随意写了个题目,如果有什么专业的名字,大家告诉我一下哈,我会修改文章题目的。
- 本文同上边几个文章的动画,均用到了CAReplicatorLayer (复制图层)
- 前边的代码都是UI布局,动画部分的代码量很少:
1.UI布局 -->这里就看不看的吧,没意思,直接看2就行了
- (void)viewDidLoad {
[super viewDidLoad];
self.title = @"【code_小马】";
self.view.backgroundColor = [UIColor cyanColor];
[self creatMyBtn];
}
-(void)creatMyBtn
{
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
btn.frame = CGRectMake(50 + 70 * i, self.view.frame.size.height - 50, 60, 50);
btn.backgroundColor = [UIColor orangeColor];
[btn setTitle:[NSString stringWithFormat:@"动画%ld",i] forState:UIControlStateNormal];
[btn addTarget:self action:@selector(selectAnimation:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn];
}
- (void)selectAnimation:(UIButton *)btn{
[_imageView.layer removeAllAnimations];
[_replicatorLayer removeAllAnimations];
[_replicatorLayer removeFromSuperlayer];
[_imageView removeFromSuperview];
[self addImageView];
[self addReplicatorLayer];
[self code_XMAnimation2];
}
#pragma mark - 添加图片
- (void)addImageView {
UIImageView *imageView = [[UIImageView alloc]init];
[self.view addSubview:imageView];
imageView.contentMode = UIViewContentModeScaleAspectFit;
_imageView = imageView;
}
- (void)addReplicatorLayer {
CAReplicatorLayer *replicatorLayer = [CAReplicatorLayer layer];
replicatorLayer.bounds = self.view.bounds;
replicatorLayer.position = self.view.center;
replicatorLayer.preservesDepth = YES;
replicatorLayer.instanceColor = [UIColor whiteColor].CGColor;
[replicatorLayer addSublayer:_imageView.layer];
[self.view.layer addSublayer:replicatorLayer];
_replicatorLayer = replicatorLayer;
}
2.实现动画 ——》本文动画的主要实现都在这里
//设定动画,复制图层
- (void)code_XMAnimation2{
_imageView.frame = CGRectMake(172, 200, 20, 20);
_imageView.backgroundColor = [UIColor orangeColor];
_imageView.image =[UIImage imageNamed:@"hei"];
_imageView.layer.cornerRadius = 10;
_imageView.layer.masksToBounds = YES;
_imageView.layer.transform = CATransform3DMakeScale(0.01, 0.01, 0.01);
CGFloat count = 15.0;
_replicatorLayer.instanceDelay = 1.0 / count;
_replicatorLayer.instanceCount = count;
//相对于_replicatorLayer.position旋转
_replicatorLayer.instanceTransform = CATransform3DMakeRotation((2 * M_PI) / count, 0, 0, 1.0);
CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"transform.scale"];
animation.duration = 1.0;
animation.repeatCount = MAXFLOAT;
// animation.autoreverses = YES;
//从原大小变小时,动画 回到原状时不要动画
animation.fromValue = @(1);
animation.toValue = @(0.01);
[_imageView.layer addAnimation:animation forKey:nil];
}
- 注意:文中的两种gif,其实只是动画的时间上有区别。要想实现gif 2 中的效果,只需要修改第二部分代码中的:_replicatorLayer.instanceDelay 和 animation.duration即可实现
_replicatorLayer.instanceDelay = 1.0 / count;
animation.duration = 3.0;
// 也就是(旋转动画的时间周期) 是 (复制图层的时间周期*图层数)的 倍数
【code_小马】 : 下次更新那个 “震动的音乐条” 的动画 😝,喜欢的关注哈
晌午时光
很喜欢的一篇文章,拿出来和大家分享
【第十一集】
他掏出了枪对准如风,我想如果他杀了如风,我就拿起地上的刀自杀。 他没有开枪,却慢慢的把枪口对准了我。如风猛地震动起来,他一只手把我搂得更紧,另一只手按住了枪管。 想先把我杀掉么?也好,我先死的话就不用那把刀了。想到这里,我不禁微微一笑。 没想到中年男子竟然放下了枪,他望着我对黄毛说:“我最讨厌这种事情,把阿福的尸体处理掉!做干净点。” 黄毛大叫道:“大哥!你要放过他?他杀了阿福啊!”中年男子冷冷地看了他一眼,黄毛马上禁声。 中年男子转过身背冲着我们说:“明天早上10点来‘东歌’夜总会找我。” 黄毛更加吃惊,不禁又喊道:“大哥!你想让他入伙?”中年男子打断黄毛:“今晚就到此为止,别让其他人知道!” 他冷冷地瞥了眼如风,说:“你有种!我很欣赏你,不过你要明白,如果你不来,我放过你,警察也不会放过你。” 如风一直坚定的表情迷茫起来,而我也终于把已毫无生气目光聚焦到这个人身上,就好像魂魄又回到了我身体中一样,今晚发生的一切在我脑中渐渐清晰。随着天空一声雷鸣,我猛地抽搐,晕倒在如风怀里。 那年,我17岁,魏如风16岁。 我们还没长大,但是我们的爱情已经长大了,繁迷绚烂,花荣叶茂,美得让人想立刻死掉…… 那个雨夜之后,阿福就象从来没在这个世界出现过一样消失得干干净净。没人来追捕如风,因为他跟随了那名神秘的中年男子——程豪。如风是抱着一种复杂的心情投奔他的,他感激程豪的救命之恩,却又暗暗忌惮他的老练。如风清楚自己选择了一条什么样的路,这条路使他看见了生活的希望,也看见了未来的黑暗。 程豪是这一带纷繁混杂的帮派中新近崛起的一支,他有着非凡的见识和冷静的头脑,所以从创建开始没过多久,通过几单买卖,他就在这片辖区闯出了点名堂。东歌夜总会是他第一个产业,也是他的总部据点。程豪的确很器重如风,很多大买卖他都让如风经手,如风本来就成熟冷酷、机警能干,混入黑道后更显露出了他的天分。在程豪的培养下,如风很快就成了他身边的得力助手之一,而且是其中年龄最小的一个,
. . . . ..而我,经历了残酷的强暴后彻底的消沉了下去。也许原来我的性格算是安静内向,那么现在则完完全全的变成了阴郁。如风很细心的呵护我,不让我有一点点的触动,也没有任何人再向我提起那件事,黄毛和另一个小弟甚至为此被清出了东歌。但是每逢雷雨,我都会象那晚一样痉挛并大声的哭喊,不让任何人接近,直到昏死过去。大夫说,这是种强烈的精神刺激,恐怕医不好。每当这样的雨夜,如风都会默默的在门口守候着我,我在屋里大声地哭,他则在屋外静静的流泪。门框上斑斑的血迹,是他用拳头无望的捶打所留下的。他为没能保护我深深自责,那种无能为力比我更痛苦,然而他默默的连同我的痛苦一起承担了下来。我曾经一段时间不敢看如风,我怕看到他那纯净而坚定的目光,我认为自己承受不起了。我早就知道,我比他懦弱,懦弱得多。但是不管怎么样,还是要活着。我们没有饿死,没被程豪杀死,那么就要活下去,因为我们一直是这样紧紧依靠着对方,为了活着而坚强的活着的。人其实就是这样,并不是为了什么高尚的理想远大的目标而活着,而是在活着的某些时候恰巧有了这些而已。如风渐渐忙起来,但他仍旧会照顾到我的一切。他不能经常到学校接我了,所以他派了一名叫阿九的小弟天天护送我下学。学校里的老师学生大概都知道我和黑帮扯上了关系,他们都更加的疏远我。我早已习惯,只要有如风,就不孤独。。如风和程豪都举着枪,程豪的枪口微微冒着白烟,程秀秀惊讶的望着她爸爸,一切都让人感觉措手不及。祥叔得意的挥了挥手说:“上!” 打手们立刻举着棍棒冲了上来。“走!”程豪推开秀秀冲了上去。东歌的人涌出来护住程豪,两拨人砍杀到了一起。 如风拉着我和程秀秀从东歌后门跑了出去,躲过了一些人的追杀,我们跑进了一个小巷里。 天空下起了小雨,我渐渐的有些跑不动了,如风停下来对程秀秀说:“你在这里等我一下!别让他们发现!” 程秀秀拉住他哭着说:“你上哪去?你别抛下我!” 如风镇定的说:“我要把她送到安全的地方,你在这里等我,我马上回来!相信我!”程秀秀安慰的点点头,如风抱起我向小巷深处跑去。如风把我放在巷子尽头的一个垃圾堆边,他在我身边摆了些纸袋说:“在这里呆到天亮,听到外边没动静了再出来,然后回家里等着我,千万不能被他们发现!明白吗?”我茫然的点点头,如风把他的外套脱下来裹在我身上,不舍得看了我一眼,站了起来。我突然回过神,抓住他说:“阿风,你别走!”如风转过身,他不敢看我的眼睛,长长呼了一口气说:“程豪救过我们,我现在必须回去。你放心,我不会有事。” “那你带我一起走!死也要死到一起!”我猛地站起来,死死的攥着他的手。如风的背颤了颤,雨水滴答滴答的击打在我们身上,黑夜显得格外阴沉,我们又一次站在了生死之间。沉默片刻,他咬咬牙甩开了我的手,向前跑了出去。“不要!”我声嘶力竭地喊,我追赶着他摔倒在地。如风渐行渐远,我泣不成声。我知道,今夜他要离开我了,而且很可能从此走出我的生命。 然而,已经跑到巷口的如风突然站住,他扭身跑了回来,我欣喜的望着他,他紧紧的把我抱在怀里。我们狠狠地拥抱,仿佛要把对方吸到自己身体里。就在这一刻,在那条肮脏的小巷里,在砍杀搏斗的雨夜,如风捧起我的脸,深深的吻了下去,我呆呆的望着天空,一种奇特的感觉慢慢涌出,我从未有关这样的感触,从头到脚都酥软的,原来两个人嘴唇的接触竟然那么的美妙。月光交织着泥泞的雨水,我慢慢闭上眼睛。这是我们的初吻。如风的吻贪婪而热烈,他使劲吸吮我的唇,我被他吻得快要晕阙。不知过了多久,他终于松开了我,我们望着彼此呼呼的喘着气。“夏如画。”如风第一次这么称呼我。“嗯?”我仿佛在梦中。“我爱你!”如风盯着我的眼睛坚定而低沉的说。他起身向巷口跑去。雨水不见了,月光不见了,一切一切犹如瞬间消失。我坐在地上望着如风慢慢远去的背影,耳边轰鸣着那三个字:我爱你。程豪没有死,死的是祥叔。是如风干的,据说他的枪法特别准,祥叔一击毙命,死的时候都没合眼,也许他根本想不到自己会死在一个十几岁的少年手里。祥叔名下的产业自然归给了程豪,从此以后程豪名符其实的成为整个辖区的大佬,而如风也一战成名,成为程豪手下令人生畏的少年一哥。这些好像都在如风的计划之内,他彻底报答了程豪的同时,也收获了金钱与地位。如风为了保护程秀秀受了很重的伤,他在医院里躺了整整三个月。好在程秀秀和Linda细心照顾,他恢复得很好。而我,却一直不敢面对他,他的吻和他的表白让我不敢应对。我不知道爱是什么,在我心里世界只分为两种,如风和我是一类,其他人都归于另一类,甚至没有性别的区别。爱情产生于男女之间,一想到把如风当成男人看待我就莫名的慌乱。男人是想把我压在身下的面目狰狞的人,阿福使我变成女人也给我留下如此的概念。和如风也这样么?想到这我就再也继续不下去,尽管我并没觉得厌恶。唯一肯定的是,和如风接吻确实很美妙,这种美妙我平生未遇,因而我总是有意无意的舔舔自己的嘴唇.............