UI Dynamics是UIKit的一个新组成部分,它向iOS中的视图提供了与物理学有关的功能和动画。可以让你向视图中引入力和物理属性,可以让你的视图弹跳,舞动,受重力影响等等。
原文出自: www.hangge.com 转载请保留原文链接: http://www.hangge.com/blog/cache/detail_870.html
下面通过样例,演示使用UISnapBehavior给UIImageView添加移动吸附行为。
效果图如下:(点击屏幕,苹果会动态移动到点击的位置,移动时还有倾斜和缓动效果)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
import
UIKit
class
ViewController
:
UIViewController
{
@IBOutlet
weak
var
imageView:
UIImageView
!
var
dynamicAnimator =
UIDynamicAnimator
()
var
snap:
UISnapBehavior
?
override
func
viewDidLoad() {
super
.viewDidLoad()
dynamicAnimator =
UIDynamicAnimator
(referenceView:
self
.view)
}
@IBAction
func
tapped(sender:
AnyObject
){
//获取点击位置
let
tap = sender
as
!
UITapGestureRecognizer
let
point = tap.locationInView(
self
.view)
//删除之前的吸附,添加一个新的
if
self
.snap !=
nil
{
self
.dynamicAnimator.removeBehavior(
self
.snap!)
}
self
.snap =
UISnapBehavior
(item:
self
.imageView, snapToPoint: point)
self
.dynamicAnimator.addBehavior(
self
.snap!)
}
override
func
didReceiveMemoryWarning() {
super
.didReceiveMemoryWarning()
}
}
|
原文出自: www.hangge.com 转载请保留原文链接: http://www.hangge.com/blog/cache/detail_870.html