在iOS7中,给UIView添加了一个方法用来直接使用关键帧动画而不用借助CoreAnimation来实现,那就是animateKeyframesWithDuration
以下是使用源码:
//
// ViewController.m
//
// Created by YouXianMing on 14/11/26.
// Copyright (c) 2014年 YouXianMing. All rights reserved.
//
#import "ViewController.h"
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
[self runAnimateKeyframes];
}
- (void)runAnimateKeyframes {
/**
* relativeDuration 动画在什么时候开始
* relativeStartTime 动画所持续的时间
*/
[UIView animateKeyframesWithDuration:6.f
delay:0.0
options:UIViewKeyframeAnimationOptionCalculationModeLinear
animations:^{
[UIView addKeyframeWithRelativeStartTime:0.0 // 相对于6秒所开始的时间(第0秒开始动画)
relativeDuration:1/3.0 // 相对于6秒动画的持续时间(动画持续2秒)
animations:^{
self.view.backgroundColor = [UIColor redColor];
}];
[UIView addKeyframeWithRelativeStartTime:1/3.0 // 相对于6秒所开始的时间(第2秒开始动画)
relativeDuration:1/3.0 // 相对于6秒动画的持续时间(动画持续2秒)
animations:^{
self.view.backgroundColor = [UIColor yellowColor];
}];
[UIView addKeyframeWithRelativeStartTime:2/3.0 // 相对于6秒所开始的时间(第4秒开始动画)
relativeDuration:1/3.0 // 相对于6秒动画的持续时间(动画持续2秒)
animations:^{
self.view.backgroundColor = [UIColor greenColor]; }];
}
completion:^(BOOL finished) {
[self runAnimateKeyframes];
}];
}
@end
细节之处:
- 大小: 307.6 KB
分享到:
相关推荐
在iOS开发中,`UIView`是构建用户界面的基础,几乎所有的可见元素都基于它。`UIView`不仅负责绘制和显示内容,还处理用户的交互事件。以下是对标题和描述中涉及的`UIView`知识点的详细解释: 1. **Bounds和Frame的...
UIActionSheet改为UIView核心代码为以下几个方法: - (void)showInView:(UIView *)view; // UIPicker显示 -(void)hidePickerView; // UIPicker隐藏 - (UIViewController *)viewController; // 通过UIView查找...
首先,让我们了解在iOS中设置阴影的基本步骤。在UIView的属性中,有两个关键的属性用于控制阴影:`layer.shadowColor`和`layer.shadowOffset`。`shadowColor`决定了阴影的颜色,而`shadowOffset`则定义了阴影相对于...
本文将深入探讨如何在iOS中实现UIView的渐变效果,并介绍一个已经封装好的解决方案,允许开发者轻松地在应用中添加渐变色。 首先,我们需要理解渐变色的基本概念。渐变色是指从一种颜色平滑过渡到另一种颜色的过程...
本示例“iOS中UIView的翻页动画demo”旨在演示如何为UIView实现逼真的翻页效果,让用户体验如同翻阅实体书页一样的平滑过渡。在实际应用中,这种动画效果通常用于电子书籍、杂志应用或任何需要模拟页面翻动的地方。 ...
在iOS开发中,手势交互是构建用户界面的重要组成部分,它使得用户可以通过触摸屏幕的各种方式来与应用程序进行互动。本教程将深入探讨如何使用扩展(Extension)和运行时(Runtime)技术,为UIView类添加手势识别...
在iOS开发中,经常需要为应用的视图(UIView)添加未读消息提示,例如App图标右上角的红点。这个"ios-为UIView添加未读消息红点.zip"项目提供了一个解决方案,通过开源库Yeebadge实现。开发者Mr-yuwei在GitHub上分享...
首先,`ImpressionKit`是一个框架,它提供了一种简单的方法来跟踪和记录用户在应用中查看特定UIView的时间。通过集成此工具,开发者可以了解哪些视图在屏幕上显示的时间最长,或者用户最常交互的部分,这对于优化...
霓虹灯效果通常涉及到颜色的渐变和闪烁,这在iOS中可以通过Core Animation框架来实现。我们可以创建一个CADisplayLink对象,它会在每帧刷新时调用指定的block,这样我们就可以在每一帧中改变UIView的背景色,从而...
这个名为"ios-UIView类别方法添加系统动画,只需一句话。.zip"的资源提供了一个简单的方法来实现这一目标,通过扩展UIView类,开发者可以方便地使用一行代码调用各种系统内置的动画。 首先,我们要理解什么是类别...
iOS 中对UIView简单的封装,换个说法:运用帧动画封装了一个HUD,使用起来简单方便,只需要调用 [RKJAnimatingHUD RKJStarAnimatingForView:self];或者 [RKJAnimatingHUD RKJStopAnimatingForView:self];一个类方法...
IOS 开发中的UIView动画是指在IOS开发中使用UIView来实现的动画效果。UIView动画是一个非常重要的技术,在IOS开发中广泛应用于各种App的开发中。 在UIView动画中,最重要的就是使用beginAnimations:context:方法来...
基于UIView扩展的类目,用于设置上下左右圆角,可设置单边圆角,也可设置为圆形 github地址:https://github.com/LQQZYY/UIViewCornerDemo 喜欢的话就给颗星支持一下,感谢!
在iOS开发中,`UIView`是界面布局的基础组件,它代表了屏幕上的一个矩形区域。这个压缩包“ios-UIView分类,可直接修改frame的值.zip”提供了一个`UIView`的分类,允许开发者更方便地调整视图的位置和大小。这种功能...
在方法tableView:cellForRowAtIndexPath中手写又繁琐。就封装变化写了一个UIView类。 构思:首先由于文字介绍和显示内容的宽度固定,然后Cell的一行(Cell可以包括多行)高度就是文字介绍和显示内容所需要的高度...
xamarin学习笔记B03(ios的UIView的了解)它是所有视图控件的父类。例如UIButton、UILabel、UIImageView等都最终是继承自UIView。它可以添加其它视图作为它的子视图。
总的来说,实现iOS中的UIView或UIViewController缩放动画涉及使用`UIView`的动画API,以及自定义动画过渡类以处理更复杂的场景。通过这些技术,开发者可以创造出丰富多样的视觉效果,提升应用的整体用户体验。
在iOS开发中,UICircularSlider是一种常见的UI控件,用于创建圆形的滑动选择器。这个组件可以为用户界面增添独特的视觉效果和交互体验。本文将深入探讨如何使用UICircularSlider,并结合UIView+Animation进行几个...
你需要在这些方法中处理旋转操作,可能包括更新UIView的transform属性来实现旋转效果。 5. **平滑动画**: 为了使旋转更流畅,通常会使用`UIView.animate(withDuration:animations:)`或`UIViewPropertyAnimator`来...
在iOS中,我们可以使用`UIView`的`animate(withDuration:delay:options:animations:completion:)`方法来创建动画,其中的`options`参数可以设置为`.curveEaseInOut`来获得类似弹簧的效果。不过,更高级和精确的控制...