• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 动态对象可以是 UIImageView

[复制链接]
菜鸟教程小白 发表于 2022-12-12 12:07:06 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我有一个 UIDynamicAnimator 行为:UIPushBehaviour。我知道 UIView 对象可以通过 initWithReferenceView 变成动态对象。但是动态对象是否有可能成为 UIImageView。如果是这样,怎么办?

(我看过苹果开发者文档,对UIDynamicAnimator的概念还真没把握,如有愚蠢请见谅)



Best Answer-推荐答案


任何事物都不会“成为动态对象”。这不是思考的方式。动态动画师具有行为。行为有项目。一个 View 可以是一个项目。这意味着 UIDynamicAnimator 可以为 UIImageView 设置动画。该 View 不知道它正在被动画化。它只是反复调用 setCenter:(如下面的@Rob 注释,还有 setTransform:bounds)。 ImageView 和任何其他类型的 View 在这里没有区别。

理解的关键是 UIKit Dynamics 是完全倒退的。在 UIView 动画和 Core Animation 中, View 与动画密切相关。您可以向 View 询问其动画,添加和删除它们等。但是 UIKit Dynamics 是粘在上面的,并且完全在 View 之外工作。您不能询问 View 是否由 UIKit Dynamics 管理。你只能问 UIKit Dynamics 它在处理什么 View (而且你不能总是轻易地问这个问题)。

根据我的经验,如果您的动画非常简单,UIKit Dynamics 可以正常工作。但是如果事情很复杂,您可能需要使用 Core Animation(或 SpriteKit,取决于您的需要)手动完成。它的文档也很少。哦,各种行为都有非常不一致的 API。它不是我最喜欢的 Cocoa 框架...

如果您想查看这方面的一些示例,您可能需要从 iOS 7 中下载示例代码TL (iosptl.com)Chapter 19 .它包括将推送动画师放到 View 中。

关于ios - 动态对象可以是 UIImageView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26371308/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap