Xamarin iOS 防止特定 viewcontroller 的旋转
Xamarin iOS Prevent rotation for specific viewcontroller
需要防止特定视图控制器上的屏幕旋转
我试过下面-
public override bool ShouldAutorotateToInterfaceOrientation(UIInterfaceOrientation toInterfaceOrientation)
{
return false;
}
public override bool ShouldAutorotate()
{
return false;
}
public override UIInterfaceOrientation PreferredInterfaceOrientationForPresentation()
{
return UIInterfaceOrientation.Portrait;
}
public override UIInterfaceOrientationMask GetSupportedInterfaceOrientations()
{
return UIInterfaceOrientationMask.Portrait;
}
没有任何效果。
提前致谢!
你可以通过这个解释来解决这个问题。
1) 在你的 AppDelegate 中添加一个布尔值,例如
public bool disableAllOrientation = false;
2) 在 AppDelegate 中修改你的 UIInterfaceOrientationnMask
public override UIInterfaceOrientationMask GetSupportedInterfaceOrientations(UIApplication application, UIWindow forWindow)
{
if (disableAllOrientation == true)
{
return UIInterfaceOrientationMask.Portrait;
}
return UIInterfaceOrientationMask.All;
}
3) 调用你想要改变方向的视图的控制器
appDelegate.disableAllOrientation = true;
4) 当视图关闭或更改时,您需要再次输入布尔值
错误并仅在需要时将屏幕置于原始方向。
appDelegate.disableAllOrientation = false;
我希望这能解决你的问题 我几天前遇到了同样的问题,这对我有帮助。
需要防止特定视图控制器上的屏幕旋转
我试过下面-
public override bool ShouldAutorotateToInterfaceOrientation(UIInterfaceOrientation toInterfaceOrientation)
{
return false;
}
public override bool ShouldAutorotate()
{
return false;
}
public override UIInterfaceOrientation PreferredInterfaceOrientationForPresentation()
{
return UIInterfaceOrientation.Portrait;
}
public override UIInterfaceOrientationMask GetSupportedInterfaceOrientations()
{
return UIInterfaceOrientationMask.Portrait;
}
没有任何效果。
提前致谢!
你可以通过这个解释来解决这个问题。
1) 在你的 AppDelegate 中添加一个布尔值,例如
public bool disableAllOrientation = false;
2) 在 AppDelegate 中修改你的 UIInterfaceOrientationnMask
public override UIInterfaceOrientationMask GetSupportedInterfaceOrientations(UIApplication application, UIWindow forWindow)
{
if (disableAllOrientation == true)
{
return UIInterfaceOrientationMask.Portrait;
}
return UIInterfaceOrientationMask.All;
}
3) 调用你想要改变方向的视图的控制器
appDelegate.disableAllOrientation = true;
4) 当视图关闭或更改时,您需要再次输入布尔值 错误并仅在需要时将屏幕置于原始方向。
appDelegate.disableAllOrientation = false;
我希望这能解决你的问题 我几天前遇到了同样的问题,这对我有帮助。