objective-c - iOS 将 UIView 平行于 X-Z 平面对齐

标签 objective-c ios uiview core-animation transform

我意识到默认情况下,UIView 平行于 X-Y 平面,Z 轴直接指向您。

如何旋转此 UIView 使其平行于 X-Z 平面?我想我必须使用 CATransform3D 但不确定我应该给它什么角度? M_PI_2 还是 -M_PI_2?

有人知道吗?感谢您的帮助...

编辑: 我知道通过这样做,用户将看不到 UIView,但我想设置一个特定的 UIView 这样,然后在上面做一些旋转动画。这就是我想要的..

最佳答案

您可能想要做的是对 View 的支持层应用转换。 transform属性(property) UIView是仿射变换,不允许任何 3D 操作。但是访问 view.layer.transform你有一个完整的 4x4 矩阵来满足你的转换需求,允许漂亮时髦的 3d 东西。

  1. 添加QuartzCore.framework到你的目标。
  2. 进口 <QuartzCore/QuartzCore.h>访问 CALayer API。
  3. 远离代码。

例如:

// Rotate 1/4 by the Y-axis.
myView.layer.transform = CATransform3DMakeRotation(M_PI_2, 0.0f, 1.0f, 0.0f);

关于objective-c - iOS 将 UIView 平行于 X-Z 平面对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6943434/

相关文章:

php - 数学函数在 PHP 中运行良好,但在 Objective C 中运行错误

iphone - TableView Controller 中的方向?

ios - 把初始代码放在哪里很困惑

iphone - 没有 subview 的反向 UIView

ios - UISearchDisplayController 和 setDisplaysSearchBarInNavigationBar

ios - documents目录下的Core Data sqlite数据库是iCloud自动备份的吗?

ios - 如何从ios中的静态库获取响应

ios - 一个棘手的 Objective-C block 行为

ios - 持有无主引用的对象何时被释放?

swift - NavigationBar 和 StatusBar 上方的 UIView