7

谁能举例说明如何将单点触控应用程序的视图从纵向旋转到横向,反之亦然?

4

3 回答 3

8

如果您在 Interface Builder 中设置 ui 元素的几何形状,请确保在 Size Inspector (Cmd+3) 中设置Autosizing属性。然后,您可以通过单击 Interface Builder 中视图标题栏左上角的小“旋转”按钮来查看旋转后视图的外观。

完成所有设置后,只需在 ViewController 中覆盖以下方法:

public override bool ShouldAutorotateToInterfaceOrientation (UIInterfaceOrientation toInterfaceOrientation)
{
    return true;
}

现在在模拟器中,您可以随意旋转,您的 UI 将自动适应。

于 2009-11-01T18:11:59.900 回答
1

众所周知,它现在位于视图 Transform 对象上:

View.Transform.Rotate(3.14159f * 0.5f);

对于所有像我这样不想使用任何 CGAffineTransform 的 dotnet 人,认为它会破坏其他东西,试试吧。非常适合我的实例。旋转 NavigationController.View,里面的一切都很完美。

于 2011-07-22T01:09:54.197 回答
1

这是你可以尝试的。

如果您想在触摸视图时更改视图的方向,请按照以下步骤操作

  1. 在视图中实现 touchesBegan 方法。

  2. 在 touchesBegan 方法中检查当前设备方向, [[UIDevice currentDevice] orientation];

  3. 如果要更改方向,请在视图上使用 CGAffineTransformation 方法viewRef.transform = CGAffineTransformMakeRotation(angle);

于 2009-10-05T10:26:18.767 回答