StoryBoard 中使用AutoLayout实现Animation效果

iOS Core Animation详解(四)AutoLayout中的动画 原创blog,转载请注明出处 blog.youkuaiyun.com/hello_hwc 欢迎关注我的iOS SDK详解专栏 http://blog.youkuaiyun.com/column/details/huangwenchen-ios-sdk.html 前言:AutoLayout定义了View的位置,也就是说,在Auto Layout的工程里,如果不修改约束本身,在视图重新绘制的时候,还会回到最开始的位置 阅读详情

使用Autolayout布局的情况下,作为一个初学者都会把我们的都会认为再和Animation无缘了,再也没发实现动画的效果了。

但是,我想说小伙伴们,你们的想法是错误的。

在使用AutoLayout的情况下,我们同样可以实现Animation的效果 。

视图在Storyboard中,通过constraints 约束,实现基本的布局,通过改变控件的

transform的属性,实现基本的动画效果。

     View添加constraints 实际上是相对视图中的Bounds的坐标位置添加的限制,通过修改在View中的Bounds上的相对坐标,就可以实现Animation的效果。(修改Bounds的相对位置,并不能影响子视图在View中的Frame的坐标)。

测试代码:

class ViewController: UIViewController {


    @IBOutlet weak var passwordLabel: UILabel!

    @IBOutlet weak var phoneLabel: UILabel!

    @IBOutlet weak var topLabel: UILabel!

    override func viewDidLoad() {

        super.viewDidLoad()

        

        topLabel.transform = CGAffineTransformMakeTranslation(0, -200)

        passwordLabel.transform = CGAffineTransformMakeTranslation(-200, -200)

        

        phoneLabel.transform = CGAffineTransformMakeTranslation(-200, 0)

        

        // Do any additional setup after loading the view, typically from a nib.

    }

    

    override func viewDidAppear(animated: Bool) {

        

        UIView.animateWithDuration(0.5) {

            self.topLabel.transform = CGAffineTransformIdentity

            self.phoneLabel.transform = CGAffineTransformIdentity

            self.passwordLabel.transform = CGAffineTransformIdentity

            

        }

    }

    




自动布局autolayout使用总结(源码含swift版本) 使用autolayout有一段时间了,Objective-C和swift下、iOS7和iOS8下都在用, 一路遇到了不少的坑,随遇随填,到今天也算是积累了不少经验了,这里总结一下, 通过自己新建的一个Doubi Demo来分享给大家。Doubi Demo我已上传到github上 去了(地址是:https://github.com/lihux/iLihuxAutoLayout),以后每篇文章的demo都 将放在github上,供大家参考。 阅读详情

相关推荐

swift autolayout布局及动画

xcode6.3编译,图形为一个登录界面。关键代码:autolayout与坐标定位混合布局的代码方式实现;uiview动画编程;屏幕旋转时背景图片切换

如何对使用了autolayout的UIView添加动画

当我们对一个UIView使用了autolayout自动布局之后,也就意味着我们放弃了传统的通过设置view的frame等方式手动的修改、确定这个view的位置、尺寸属性。甚至从某种程度上讲,我们应该忘记view的frame属性:它的确定不再取决于我(手动的直接修改),而是通过我们在storyboard或者code中提供的约束条件(constraints),通过一个自动布局引擎(苹果为autolayout采用的是Cassowary布局引擎,参考文档:点击打开链接),计算出这个view的frame。因此我们可以

厚积薄发 9137

AutoLayoutAnimation:自动布局动画示例

自动布局动画 该项目显示了UIView动画如何与“自动布局”一起使用。 您可以在我的博客上阅读该文章。

[iOS AutoLayout动画 坑] AutoLayout动画平移坑总结 => Swift/OC

参考帖子:自动布局 Autolayout 报错:Unable to simultaneously satisfy constraints.参考帖子: Auto Layout 进阶参考帖子:谈StoryBoard上AutoLayout的约束动画学习尝试使用Swift做约束动画 实现这样的效果===>> 冲击波往下刷 <<===结果 我在学习的时候出现的效果是↘️↙️ ↗️↖️这样的缩进方式 我瞬间蛋

iOSTianNan的博客 2552

ios-自动布局系列代码(包括xib、storyboard、autoresizing、autolayout size class).zip

细谈屏幕适配和界面开发辅助工具

iOS开发之--storyboard适配AutolayoutPG.pdf

英文版的autolayout指导教程,官方版

【源代码】手把手教你Autolayout如何使用动画(附类似Passbook效果Demo+详细分析实现原理)

今天来点硬货! 先看我们今天要实现的动画: 好的,在Autolayout没出现以前,也就是iOS6以前,要实现这个效果非常复杂,因为你要实时地去算每个视图的位置,而且还很难保持联动。但是iOS6中出现了Autolayout出现,再来看这个效果就豁然开朗了。而且随着iPhone、iPad的多种尺寸屏幕的趋势,势必推送SizeClass的大面积应用,而SizeClass的使用又和Auto

zlyapple的博客 885

如何使用ArcGIS Pro制作带基底三维地图

点击运行生成范围线,因为之前对高程进行了夸大,导致生成的范围线和地形边缘不重合,我们打开范围线的图层属性,选择高程选项卡,要素位于选择地面上,如下图所示。目前制作的三维地图下面是空的一片,现在添加一个基底,在工具箱内点击“3D Analyst工具\栅格\转换\栅格范围”,调用栅格范围工具,如下图所示。打开ArcGIS Pro,新建一个局部场景,在高程表面下,地面上点击右键,选择添加高程源图层,将需要制作三维地图的DEM数据加载进来,如下图所示。在要素图层菜单内,类型选择绝对高度,如下图所示。

3978

Autolayout约束动画化-Animating Autolayout Constraints

原文:Animating Autolayout Constraints 作者:@kharrison 译者:CocoaChina--起个名字好难(CC论坛ID) 首发:CocoaChina 记于二零一五年晚春:距上次发文已有五天,看了众同僚的反馈,我把这段代码重新搞了搞,以此来避免在运行时添加或删除约束。取代这些像JAVA一样笨重的方法的是我开

args_的博客 1015

时钟门控ICG单元的timing问题

本文探讨了数字IC设计中门控时钟(ICG)的时序收敛问题,重点分析了ICG单元在setup时序检查中易出现违例的原因及优化方法。文章指出,由于ICG单元不在时钟树平衡范围内,其时钟路径延迟通常小于后续寄存器,导致setup时序难以满足。提出的解决方案包括:1)将ICG尽量靠近受控寄存器放置;2)使用set_clock_gating_check命令加强时序约束;3)在布局阶段设置负时钟延迟;4)CTS阶段设置插入延迟。同时强调set_clock_gating_check命令对ICG单元同样有效,并介绍了ICG

u011075954的专栏 1104

别再被坑了!手把手教你从官网下载免费正版Notepad++(附最新网盘链接)

本文详细指导如何从Notepad++官网安全下载正版软件,避免山寨版本带来的安全风险。通过识别官网特征、推荐官方下载渠道、揭露山寨网站骗局及验证正版功能,帮助用户高效获取纯净的Notepad++代码编辑器,并分享实用插件和配置优化技巧。

weixin_42527654的博客 562

LLC混合滞回控制 vs 电压模/电流模:UCC25640x仿真对比与选型指南

在开关电源设计中,LLC谐振变换器的环路补偿是核心难点。传统电压模控制(VMC)和电流模控制(CMC)在LLC拓扑上存在环路增益漂移、动态响应慢等局限。混合滞回控制通过滞回比较器直接调制开关频率,并融合输出电压与谐振腔电流信息,实现了自适应环路增益和快速瞬态响应。该技术显著提升轻载效率与动态性能,适用于高密度适配器、快充及车载充电机等场景。本文基于UCC25640x系列,通过仿真对比三种控制策略,为工程选型与调试提供实践参考。

weixin_33925615的博客 333

autoLayout+sizeClass屏幕适配

一、屏幕适配(autoLayout+sizeClass) 1.目前市面上的主流布局形式: a. frame 布局,通过代码计算(老程序员习惯使用) b. autoLayout(新的出现)与sizeClass的结合使用,完美的解决了不同尺寸屏幕横竖屏的问题 2.autoLayout的核心概念 a.参照 b.约束 autoLayout的警...

weixin_30797027的博客 280

Qualcomm AI Engine Direct SDK(QNN)的使用介绍

Qualcomm AI Engine Direct SDK,高通新的AI模型推理框架,又名QNN,为AI开发提供统一API的底层框架。通过这个SDK,可以在高通的 CPU/GPU和HTP上对AI模型进行性能加速。2.Qualcomm AI Engine Direct SDK的公开英文文档。1.Qualcomm AI Engine Direct SDK的下载和安装。

u013250861的博客 6971

MIKE水动力笔记7_实测数据与模型输出结果的拟合对比

上一博文【MIKE水动力笔记6】主要讲解如何自己制作实测数据的时间序列文件dfs0,而本博文讲解如何进行实测数据与模型输出结果的拟合对比。

晏长街的博客 1万+

(八十九)用AutoLayout实现动画和Label根据内容自动调整

【AutoLayout动画】 对于storyboard每个约束,都可以像控件那样通过拖线的方式来建立和代码的连接。 约束是一个对象,通过这个对象的constant属性可以修改约束的点数。 在修改之后,通过在UIView的animateWithDuration::方法的block内调用[self.view layoutIfNeeded]方法可以实现动画效果,调用layoutIfNeeded

最美的时光 762

多思计组实验实验三、存储器读写实验

实验三、存储器读写实验

qq_53089329的博客 3651

一个Demo展示Storyboard的强大

一个Demo展示Storyboard的强大 2015-03-30 09:11编辑:suiling分类:iOS开发来源:叶孤城___的简书 74656 iOS开发demostoryboard删除 招聘信息: 转载:[企业招人]爱加密重金聘请安卓安全工程师,有优质单身妹子哦! 深圳创业公司招聘ios工程师 今天我通过完成一...

weixin_30295091的博客 60

SpringBoot一次请求中缓存数据,请求结束就清除的4种方法,你会几种?

通过以上四种方法,你可以在 SpringBoot 的一次请求中缓存数据,并在请求结束后自动清除这些缓存数据。使用 ThreadLocal:适用于需要跨多个方法调用的缓存数据,灵活性高,但需要注意内存泄漏问题。使用 AOP:适用于全局性的缓存管理,代码更加优雅,但需要对 AOP 有一定的了解。使用 ServletRequestListener:适用于简单的请求生命周期管理,配置简单,但功能相对有限。使用 HttpServletRequest 的 setAttribute 和 getAttribute。

java专栏 1295

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

AutoLayout(自动布局)入门

AutoLayout(自动布局)入门 这是博主的WWDC2012笔记系列中的一篇,完整的笔记列表可以参看这里。如果您是首次来到本站,也许您会有兴趣通过RSS,或者通过页面左侧的邮件订阅的方式订阅本站。 AutoLayout在去年的WWDC上被引入Cocoa,而在今年的WWDC上,Apple不惜花费了三个Session的前所未见的篇幅来详细地向开发者讲解AutoLayout在iO

yongyinmg的专栏 3552

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

如何创建一个非常酷的3D效果菜单(swift)

原文地址在这里.原文 去年,读者们投票选出了Top5的iOS7最佳动画,当然也很想看到有关这些动画如何实现的教程。这次,我们将会实现Taasky这个app的3D效果的侧滑菜单。 这篇教程比较适合开发经验比较丰富的开发者。因为这篇教程涵盖Autolayout,UIScrollView,viewcontroller容器还有CoreAnimation。这些对于初学者来说都比较陌生,所以如果你

abc4715760的专栏 1042

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

如何将现有iOS项目迁移到LeeGo框架?平滑过渡指南

LeeGo是一个声明式、可配置且高度可重用的iOS UI开发框架,采用类似乐高积木的方式构建UI组件。如果你正在寻找一种更优雅的方式来重构现有iOS项目的UI层,LeeGo框架提供了一个平滑的迁移路径。本指南将详细介绍如何将传统的iOS项目迁移到LeeGo框架,实现UI开发的模块化和可维护性提升。🚀 ## 为什么选择LeeGo框架进行UI重构? LeeGo框架通过"积木"(Brick)的概念

gitblog_01171的博客 762

iOS 9: UIStackView入门

2015-06-23 10:36 编辑: suiling 分类:iOS开发 来源:CocoaChina译者翻译 6 47615 UIStackView 本文由CocoaChina译者candeladiao翻译,欢迎参加我们的翻译活动。 原文:iOS 9: Getting Started with UIStackView 同iOS以往每个迭代

天道酬勤 356

IOS基础 总结

(一)在.m文件中声明的方法都是私有方法,外界是无法访问的,这就保证了程序的封装性 (二) UIView常见属性 @property(nonatomic,readonly) UIView *superview; 获得自己的父控件对象 @property(nonatomic,readonly,copy) NSArray *subviews; 获得自己的所有子控件对象 @pr

持之以恒,不需要特别的关注,成为持续不间断的坚持 401
上一篇: TableView之ScrollView爱恨
下一篇: iOS 跳转到系统设置界面
Flame_Dream
博客等级 码龄12年 35粉丝 82原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值