美文网首页
iOS界面物理因素的使用

iOS界面物理因素的使用

作者: 奔跑的徐胖子 | 来源:发表于2016-11-24 22:25 被阅读20次

UI Dynamics是UIKit的一个新组成部分,它向iOS中的仕途提供了与物理学有关的功能和动画。

在界面中实现一个view(球)的重力下落和碰撞

在界面中实现一个view的下落和碰撞,首先,要想实现这些物理因素的效果,要有一个来实现效果的东西——UIDynamicAnimator,直接上代码了:

import UIKit

class ViewController: UIViewController {
    @IBOutlet weak var ball: UIView! // xib拖出来的一个view,是个球

    var dynamicAnimator: UIDynamicAnimator! // 控制器中有一个dynamicAnimator,用来作为物理因素的执行者

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        
        ball.layer.cornerRadius = 50.0 // 把view做成一个球(强迫症)
        
        // 初始化这个animator,初始化的时候用的是一个关联的view
        // 这里用的是所有控件的父view,这个父view我的理解是执行所有物理因素动画的所有者和执行者
        dynamicAnimator = UIDynamicAnimator.init(referenceView: self.view)
       
        // 为ball设置一个重力的行为,并且添加到animator中去
        let gravityBehavior = UIGravityBehavior.init(items: [self.ball])
        dynamicAnimator.addBehavior(gravityBehavior)

        // 为ball添加一个碰撞的行为,也添加到animator中去
        let collisionBehavior = UICollisionBehavior.init(items: [self.ball])
        collisionBehavior.translatesReferenceBoundsIntoBoundary = true // 设定边界在这个碰撞行为相关的坐标系中是生效的
        dynamicAnimator.addBehavior(collisionBehavior)
    }
}

吸附UI

这个也是个behavior,跟重力那些一样,可以让界面元素吸附到某一个点去

// 这个可以在比如点击手势的时候,让一个指定的界面元素移动到那个位置之类的情况
let snap = UISnapBehavior.init(item: self.ball , snapTo: aPoint )
 dynamicAnimator.addBehavior(snap)

相关文章

  • iOS界面物理因素的使用

    UI Dynamics是UIKit的一个新组成部分,它向iOS中的仕途提供了与物理学有关的功能和动画。 在界面中实...

  • Reveal : Xcode辅助界面调试工具

    Reveal简介: Reveal是一款iOS界面调试工具,辅助Xcode进行界面调试,使用它可以在iOS开发的时候...

  • iOS集成ReactNative跳转、传值

    iOS跳转RN界面iOS跳转RN界面传值iOS跳转不同的RN界面(一)iOS跳转不同的RN界面(二)RN界面跳转到...

  • Reveal 界面调试工具

    Reveal是一个iOS程序界面调试工具,使用Reveal,我们可以在iOS开发时动态的查看和修改应用程序的界面,...

  • UIWindow笔记

    在iOS App中,UIWindow是最顶层的界面内容,我们使用UIWindow和UIView来呈现界面。UIWi...

  • iOS8 TableView 遇到的坑

    问题:iOS8下,界面A使用了grouped类型的UITableView,发现点击cell跳转到别到界面,再返回界...

  • IOS跳转方式

    参考:iOS ViewController跳转界面的几种方法简单总结UITabBarController的使用详解...

  • 2016.9第二周

    博客深入理解 GCD - IOS - 伯乐在线(iOS)模仿斗鱼的部分界面介绍一(部分使用RxSwiftzen/m...

  • UIKit Dynamics归纳与实践

    UIKit Dynamics 在 iOS 7 中首次被引入,可以让开发者通过简单的方式,给应用上的界面添加模拟物理...

  • UIWindow的基本使用

    二、使用UIWindow 1、简介在iOS App中,UIWindow是最顶层的界面内容,我们使用UIWindow...

网友评论

      本文标题:iOS界面物理因素的使用

      本文链接:https://www.haomeiwen.com/subject/wvhipttx.html