我希望有一个完全颠倒的界面。我不是说它应该根据手机的方向改变。我的意思是它应该是颠倒的(UIInterfaceOrientationPortraitUpsideDown)。一个按钮应该能够再次'正确'。相同的按钮应该将所有内容都颠倒过来。
实现这一目标的最佳方式是什么?
答案 0 :(得分:2)
在根视图的图层上设置transform属性。类似的东西:
bool upsideDown = ...
float degrees = upsideDown ? 180.0f : 0.0f;
NSNumber* radians = [NSNumber numberWithFloat:degrees * M_PI / 180.0f];
[rootView.layer setValue:radians forKeyPath:@"transform.rotation.z"];
(当然,您可以轻松优化从度数转换为弧度的小公式,因为您只使用0.0和pi。包括它只是为了清晰。)
答案 1 :(得分:2)
如果您想要一个倒置的界面,方向无关紧要。实质上,将旋转仿射变换应用于您使用的视图,例如:
window.transform = CGAffineTransformRotate(window.transform,M_PI);
如果你有一个状态栏,那里将需要一些补偿。再次应用它然后“旋转”它。
答案 2 :(得分:1)
我会考虑两个选项:
不确定如何完成任务,但快速的Google搜索会显示一些结果。