在Playground中,能否预览使用animateWithDuration对UIView进行的动画?我在UIView初始化后立即添加了XCPShowView,但无论我选择时间轴上的哪个位置,它都会显示最终状态。
在Playground中,能否预览使用animateWithDuration对UIView进行的动画?我在UIView初始化后立即添加了XCPShowView,但无论我选择时间轴上的哪个位置,它都会显示最终状态。
是的,它可以用(在Xcode 6.1.1上测试通过,但可能适用于更早的版本)。
您应该:
选择“在完整模拟器中运行”选项(请参见这个答案以获得逐步说明)。
将要动画的视图添加到容器视图中。
例如,这显示了一个黑色正方形向下左移动:
import UIKit
import XCPlayground
let container = UIView(frame: CGRect(x: 0.0, y: 0.0, width: 100.0, height: 100.0))
XCPShowView("container", container)
let view = UIView(frame: CGRect(x: 0.0, y: 0.0, width: 50.0, height: 50.0))
view.backgroundColor = UIColor.blackColor()
container.addSubview(view)
UIView.animateWithDuration(5.0, animations: { () -> Void in
view.center = CGPoint(x: 75.0, y: 75.0)
})
Xcode 7更新: XCPShowView
已被弃用,但您可以在playground liveView中查看动画。更多内容即将推出:交互式Playgrounds
这是Joseph Chen示例代码的更新。我还将颜色更改为绿色,因为容器的默认背景是黑色:
import UIKit
import XCPlayground
let container = UIView(frame: CGRect(x: 0.0, y: 0.0, width: 100.0, height: 100.0))
// XCPShowView("container", view: container) // -> deprecated
let view = UIView(frame: CGRect(x: 0.0, y: 0.0, width: 50.0, height: 50.0))
view.backgroundColor = UIColor.greenColor()
container.addSubview(view)
UIView.animateWithDuration(5) {
view.center = CGPoint(x: 75.0, y: 75.0)
}
XCPlaygroundPage.currentPage.liveView=container