启动画面方向锁定
Splash screen orientation lock
对于支持所有方向的应用程序,我们可以将启动画面的方向锁定为纵向吗?目前,当我在设备横向启动应用程序时,启动画面看起来非常难看,我只需要纵向。
将启动画面锁定为纵向的唯一方法是将应用支持的方向设置为单独的纵向。
如果您想在单一方向上使用启动屏幕故事板,请更改 info.plist 以仅指定该方向。
然后,如果您想在启动屏幕情节提要完成后让应用程序 运行 具有不同的方向,则只需将以下方法添加到您的应用程序委托 (objective-c):
- (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
{
UIInterfaceOrientationMask theMaskToReturn = UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscapeLeft | "etcetera";
return theMaskToReturn;
}
然后为您的整个应用程序使用单个导航控制器(如果您对这个单个导航控制器进行子类化,它必须具有与上述相同的 masktoreturn)。
然后在每个 VC 中您可以指定支持的方向。
请注意,如果您通过 MFMailComposer 或 ActivityVC 进行共享,它们都是从 self
在 VC 中呈现的,那么 masktoreturn 必须包含允许的方向。
对于支持所有方向的应用程序,我们可以将启动画面的方向锁定为纵向吗?目前,当我在设备横向启动应用程序时,启动画面看起来非常难看,我只需要纵向。
将启动画面锁定为纵向的唯一方法是将应用支持的方向设置为单独的纵向。
如果您想在单一方向上使用启动屏幕故事板,请更改 info.plist 以仅指定该方向。
然后,如果您想在启动屏幕情节提要完成后让应用程序 运行 具有不同的方向,则只需将以下方法添加到您的应用程序委托 (objective-c):
- (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
{
UIInterfaceOrientationMask theMaskToReturn = UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscapeLeft | "etcetera";
return theMaskToReturn;
}
然后为您的整个应用程序使用单个导航控制器(如果您对这个单个导航控制器进行子类化,它必须具有与上述相同的 masktoreturn)。
然后在每个 VC 中您可以指定支持的方向。
请注意,如果您通过 MFMailComposer 或 ActivityVC 进行共享,它们都是从 self
在 VC 中呈现的,那么 masktoreturn 必须包含允许的方向。