首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在IOS中重新执行UIView动画,而不是.repeat动画(Swift)

在iOS中重新执行UIView动画,而不是.repeat动画,可以通过以下步骤实现:

  1. 创建一个函数来执行UIView动画,例如:
代码语言:txt
复制
func startAnimation() {
    UIView.animate(withDuration: 1.0, animations: {
        // 设置动画效果
        // ...
    }, completion: { _ in
        // 动画完成后的操作
        // ...
    })
}
  1. 在需要重新执行动画的地方调用该函数,例如:
代码语言:txt
复制
startAnimation()
  1. 如果需要在动画完成后再次执行动画,可以在completion闭包中调用startAnimation函数,例如:
代码语言:txt
复制
func startAnimation() {
    UIView.animate(withDuration: 1.0, animations: {
        // 设置动画效果
        // ...
    }, completion: { _ in
        // 动画完成后的操作
        self.startAnimation() // 重新执行动画
    })
}

这样,每次动画完成后都会再次执行startAnimation函数,从而实现重新执行UIView动画的效果。

对于这个问题,腾讯云没有直接相关的产品或链接地址。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Ios常用第三方动画框架(三)

    JWAnimatedImage.swift - JWAnimatedImage.swift集中了目前主流的 GIF 显示库( FLAnimatedImage,Gifu 等)的优点,进行重构,代码短小精悍...KYWaterWaveView - 一个内置波浪动画UIView,里面有鱼跳跃水溅起来的效果。 WaveLoadingView - iOS 唯一完美的波浪进度加载指示器,实现说明。...iCarousel - iCarousel是一个类,它继承于UIView。用于简化实现各种类型的旋转木马(分页滚动视图),无限轮播 ,iOS开发之多图片无缝滚动组件封装与使用。...CardsAnimationDemo - swift,《使用 UICollectionView 实现的一个卡片动画不是直接操作所有 UIView 和 CALayer 的 transform3D 属性来实现整个效果的...CoreAnimationCode.swift - 提供了 "iOS Core Animation Advanced Techniques" 书籍的代码实例, 方便开发者们进行参考学习。

    9.1K30

    动画分析步骤“三步曲”

    iOSUIView图层不仅集成了动画的线性渐变方法,而且动画的加速、减速以及复杂的动画变化时间函数、运动路径函数也已经为大家集成好了,所以只需要学会如何使用这些丰富的API即可,且这个功能只需要几行代码就可以实现...要想弄清楚这个问题先搞清楚ViewController.swift 几个方法的执行顺序。需要关注以下3个方法。...在闭包只需要将动画的结束状态设置完成,那么动画从开始到结束的中间过程,iOS都会自动实现。下面为viewWillAppear()动画实现代码。...4 UIView视图中常见动画的属性分析 我们在第2节和第3节主要依靠UIView下的frame属性来实现登录按钮从左到右的进入效果。那么UIView下的其他属性是不是也可以有类似的效果呢?...UIView的x、y坐标,CGSize包含了UIView的Width、Height信息。

    88110

    《Motion Design for iOS》(十七)

    这里是和上面一样的功能,但是是Swift不是Objective-C写的。你可以打开Balls In Swift Xcode工程导出这个例子的Swift版本。...iOS提供了一些内置的技术来创建动画:创建并添加一个CAAnimation到我们之后要讨论的layer,或者使用简单的基于block的动画方法来动画UIView的值。...现在让我们再添加一些值的改变到动画block来丰富你使用基于block的动画可以操作的内容。...你可以手动构建转变矩阵来包含尺寸和平移更改到一个数据结构,但我发现让iOS来帮我们结合多个单独的转变到一个最终转变会容易一些。 到目前为止有意义吗?...动画一个视图的转变矩阵是发动动画最有效的方式之一。 查看完整合集:https://github.com/Cloudox/Motion-Design-for-iOS 查看作者首页

    95220

    Ios常用第三方框架(一)

    模糊效果 FXBlurView - 是一个UIView子类,支持iOS5.0以上版本,支持静态、动态模糊效果,继承与UIView的模糊特效。...SnapKit - 就是“snap”, --swift 喜欢自动布局吗?当然喜欢!至少在storyboard创建时会喜欢。...Cartography - Cartography 是用来声明 Swift 的 Auto Layout,无需输入任何 stringly 就可设置自己 Auto Layout 的约束声明。...LTMorphingLabel - swift 能够实现文字变形动画效果的Label,用Swift写的一个能够实现文字变形动画效果的Label,很炫。 GJCFCoreText - 图文混排。...Splitflap.swift - 可用于快速给 iOS 应用创建文字翻转的动画效果。 WordPress-Editor-iOS - 一个文本编辑器 简书和新浪博客都在用。

    5.4K31

    iOS动画系列之六:利用CABasic Animation完成带动画特效的登录界面1. 画风突变的笑脸2. 心跳3. iOS实践:实现一个带动效的登录界面

    https://git.oschina.net/atypical/CABasic-Animation.git iOS动画系列之CABasic-Animation(OC和Swift两版) 1....completion : 动画完成后要执行的block。 1.3.2 weakSelf 在使用UIView添加动画的时候,其实可以看到系统提供的都是Block。...3,在登录界面的viewWillAppear方法,先把两个输入框还有按钮的位置都修改了,不然做动画的时候咱们才能让这些控件移动到正确的位置上嘛。 4,在viewDidAppear方法,实现动画。...不让在动画的播放过程可以不停的点击登录按钮,如果动画播放时间比较长,这个动画时间是会累加的?。...包含了OC和Swift两种源代码(下) 第三篇:iOS动画系列之三:Core Animation。介绍了Core Animation的常用属性和方法。 第四篇:CABasic Animation。

    1.6K60

    抓住iOS的未来 - 30天学习编写30个Swift小程序

    其实我并不是唯一在国内发起这个30天30个Swift小程序并且将其开源的作者,但是我可能是唯一一个从头到尾用XCode 8 + Swift3环境编写的作者。...- 最后当然是Animation动画执行逻辑了,可以通过UIView的animate方法去实现。具体参数和方法可以参考之前的Project来进灵活组合。...以此这种“进场动画”不应该在渲染过程的delegate执行。 将动画放到ViewWillAppear里来做。...GradientInTableView.gif 我学到了 这个比较简单,注意将CAGradientLayer应用在UITableViewCell上即可 建议将CAGradientLayer作为cell的backgroundView,不是直接在...image.png 下一步,我打算再重新梳理下Swift语法,对这些项目进行小规模的重构,从结构上去看看能否挖掘到Swift的特性,从另一个角度(目前是功能角度)来学习Swift

    2.4K20

    iOS 系统的视图动画

    iOS 系统的视图动画 动画为用户界面的状态转换提供了流畅的可视化效果, 在 iOS 中大量使用了动画效果, 包括改变视图位置、 大小、 从可视化树删除视图, 隐藏视图等。...在 iOS 系统, Core Animation 提供了内置的动画支持, 创建动画不需要任何绘图的代码, 你要做的只是激发指定的动画, 接下来就交给 Core Animation 来渲染, 总之, 复杂的动画只需要几行代码就可以了...使用 Begin/Commit 方法做动画iOS 3.0 以及之前的系统, 必须使用 UIView 的类方法 beginAnimations:context: 和 commitAnimations...iOS 支持嵌套的动画, 也就是说在一个动画代码段, 可以再开始另外一个动画代码段, 不必等当前动画完成, 嵌套的动画会同时开始运行, 默认继承原来动画的延时、 时间长度、 加速曲线等, 不过这些选项也能被覆盖..., 这可能不是原来期望的动画效果。

    2.2K30

    iOS block-base 动画简单用法+关键帧动画设置线性变化速度的问题

    iOS的各种动画相漂亮,相信这是吸引很多人买iPhone的原因之一。不仅如此,这还是吸引我做iOS开发的一大原因,因为在iOS上给界面实现一些像样的动画实在是太轻松了!...这里就介绍一下iOS的block-based animation的简单用法。文后有一个坑爹问题的临时解决方法,请知情人不吝赐教。 首先是实现下面的动画: ?...上文代码,首先让 mView 的透明度从0动画到1,然后在 completion 的 closure 再次设置一个动画,让 mView 的透明度回到0。...需要注意的一点是addKeyframeWithRelativeStartTime的startTime和relativeDuration都是相对与整个关键帧动画的持续时间(这里是2秒)的百分比,设置成0.5...在实现上面的效果的时候遇到了一个问题:iOS这些动画默认的变化速度是开始结束慢,中间快,于是这种循环动画的效果就不均匀。

    1.7K20

    谈谈Swift的extension

    如果你是C或者Java等语言的使用者,从未接触过Ruby,此时是不是有种打开了新世界的大门的感觉_。反正当初我刚接触Ruby那会儿时常会感叹,啊原来代码还可以这么写。。。...今天的重点是,Swift也可以这么写。 首先我们要明确,Ruby之所以可以这么写是因为它是一个纯面向对象的语言,在Ruby的世界,一切皆对象,所有的事物都有一个共同的祖先——Object。...而在Swift,Int是一个struct(结构体),并不是个class。但是Swift的struct与别的语言中的struct不同的是,struct内部也可以定义方法。...譬如我最近在自己的项目中给被点击的UIView(比如button)写了一个小动画,点击了之后组件会上浮一下,并且同时会有一下阴影效果。...UIView不是UIButton的原因。

    52220

    UIKit Dynamics:开始入门 —《Graphics & Animation系列一》

    这些属性是隐式解包的optionals(类型名称后面的!所示)。 这些属性必须是可选的,因为我们没有在init方法初始化它们。...使用每秒数千像素单位的单位 ,不是米。 使用牛顿第二定律,仍然可以根据提供的重力组件随时计算出视角。 当然我们并不需要知道这些细节,只需要知道g值越大意味着物体下降的越快。...在下一步,将了解如何在物品碰撞时接收通知。...在viewDidLoad,从square声明删除let关键字,以便它使用新属性不是局部变量: square = UIView(frame: CGRect(x: 100, y: 100, width...然后创建一个新的捕捉行为,将方块对齐到用户的触摸位置,并将其添加到动画制作工具。 构建并运行应用程序。

    1.9K30

    iOS基础动画教程

    iOS动画多种多样,动画做的好的应用会更加吸引人,用起来也会更加炫目,本文介绍iOS几种基础动画,单个讲解便于理解,但真正使用时,结合起来用会看起来更加帅,这就看具体的应用场景和大家的想象力啦。...这个方法可以包含一个代码块,里面设置要改变的东西,在执行的时候iOS会自动以动画的形式展现出来,代码如下: [UIView animateWithDuration:1 animations:^{...此外,还可以延迟动画执行时间,比如想延迟半秒后执行,那么还是同样的方法,但是参数要多一点: [UIView animateWithDuration:1 delay:0.5 options:nil...旋转动画 上面的动画操作都很简单,都是在动画的代码块内重新设置一下就可以达到动画的效果了,旋转就稍微复杂一点。...以上就是基本的iOS UIView动画了,单个看各自都挺简单的,在我们的真实使用当中,当然也要注意结合使用,发挥想象力,简单的功能也是可以组合出帅气的效果的~ 可以在github下载我的示例工程:https

    72230

    iOS 面向协议封装全屏旋转功能

    关于使用面向协议来封装功能的实战可以参考我上篇文章 【iOS 面向协议方式封装空白页功能】,这里就不再赘述,我们直接进入使用阶段吧。...本篇文章只有一个目的,那就是只要遵守协议,一行代码随意切换全屏~ 如果对面向协议有疑问的同学可以看下我之前的两篇文章 iOS - Swift 面向协议编程(一) iOS - Swift 面向协议编程...LXFProtocolTool/FullScreenable' 一、配置 若项目支持横屏(Landscape)则跳过此配置步骤 若项目只支持竖屏(Portrait)的话需要在AppDelegate实现如下方法...return UIInterfaceOrientationMask.landscape } return .portrait } 二、使用案例 方法与属性的调用都需要命名空间加上 lxf,isFullScreen...上述的方法都有一个config参数,默认为nil,即为默认配置 相关属性说明 Name Type Desc Default animateDuration Double 进入/退出 全屏时的旋转动画时间

    1K60

    iOS高质量的动画实现解决方案——Lottie

    iOS高质量的动画实现解决方案——Lottie     真心的认为Lottie是一款十分优秀且实用的动画开发库,不只对于iOS和android原生开发者来说其让复杂动画的实现几乎没有成本,对于设计师来说...本篇博客主要以iOS平台为例,简单介绍和总结Lottie动画库的使用方式。 一、几个有用链接 Lottie官网:https://airbnb.design/lottie/。...三、对Lottie库的应用解析     首先LOTAnimationView类是显示Lottie动画的视图类,从源代码中看它是继承自LOTView,不要慌,这个LOTView并不是什么稀奇古怪的类,它其实就是为了代码统一...,是UIView或NSView的别名而已。  ...构造出LOTAnimationView实例后,需要调用方法进行动画的播放,下面列出了LOTAnimationView的常用属性与方法: //获取动画是否正在播放 @property (nonatomic

    3K20

    UIKit Dynamics:抛出视图 —《Graphics & Animation系列三》

    打开DynamicsTossingVC.swift并将以下代码放在viewDidLoad()super.viewDidLoad()下方。...我们用VC的view作为参考视图,该视图定义了动画制作者的坐标系统。 可以将动画添加到动画制作工具,这样可以执行诸如附加视图,推动视图,使其受重力影响等等。...为了解决这个问题,将这个新方法添加到类: fileprivate func resetDemo() { animator.removeAllBehaviors() UIView.animate...CGFloat = 1000 let ThrowingVelocityPadding: CGFloat = 35 ThrowingThreshhold表示视图必须移动的速度有多快才能使视图继续移动(不是立即返回到原始位置...一旦设置了推送行为,就将其添加到动画序列。 3、本部分设置了一些旋转以使图像“飞走”。 在这里阅读复杂的计算。 其中一些取决于手指在启动手势时距离手指边缘的距离。

    1.1K20
    领券