锁定“应用程序部署信息”肖像后,如何手动设置设备方向?

用户名

我不希望我的应用程序被美化并始终是porttrait.so,所以我将我的应用程序的“部署信息”设置为仅设置纵向。但是当我需要在我的应用程序中显示任何图像或视频时,我需要横向模式才能更好地显示。

我可以通过以下方式检测设备方向变化

[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];

[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(orientationChanged:)
 name:UIDeviceOrientationDidChangeNotification
 object:[UIDevice currentDevice]];

- (void) orientationChanged:(NSNotification *)note
{
UIDevice * device = note.object;
switch(device.orientation)
{
    case UIDeviceOrientationPortrait:
        /*  */
        break;

    case UIDeviceOrientationPortraitUpsideDown:
        /*  */
        break;
    case UIDeviceOrientationLandscapeLeft:
       /*  */
       break;

    case UIDeviceOrientationLandscapeRight:
       /*  */
       break;
    default:
        break;
};
}

但是,即使“应用程序部署信息”肖像被锁定,我如何手动更改设备方向?

没有用

NSNumber *value=[NSNumber numberWithInt: UIDeviceOrientationLandscapeLeft];
[[UIDevice currentDevice] setValue:value forKey:@"orientation"]; 
Santu C

请从您的项目设置中启用纵向和横向。然后使用以下方法为所有viewcontroller进行自动旋转-

- (BOOL)shouldAutorotate {
    return NO;
}

然后对除LandScapeViewControler之外的所有其他对象使用以下方法-

- (void)viewWillAppear:(BOOL)animated {

    [[UIDevice currentDevice] setValue:
     [NSNumber numberWithInteger: UIInterfaceOrientationPortrait]
                                forKey:@"orientation"];
}

对LandScapeViewControler使用以下方法-

- (void)viewWillAppear:(BOOL)animated {

        [[UIDevice currentDevice] setValue:
         [NSNumber numberWithInteger: UIInterfaceOrientationLandscapeLeft]
                                    forKey:@"orientation"];
    }

如果您使用的是NavigationController和TabBarController,请使用category关闭自动旋转。

希望这会对您有所帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将手动部署的单实例应用程序重构为客户端部署的多实例或多租户应用程序

来自分类Dev

如何手动将应用程序安装到“应用程序”列表中

来自分类Dev

如何使从 .tar 手动提取的应用程序在“显示应用程序”中可用?

来自分类Dev

在信息亭模式下手动更新Windows应用程序无效

来自分类Dev

从横向启动应用程序时在IOS中锁定肖像方向

来自分类Dev

Apple批准后在AppStore上手动发布应用程序

来自分类Dev

即使在手动启动应用程序后也未收到 BOOT_COMPLETED 广播

来自分类Dev

Android-单击按钮时手动更改应用程序区域设置

来自分类Dev

手动终止应用程序后,将应用程序返回到后台进行蓝牙事件处理

来自分类Dev

C#-手动关闭表单应用程序

来自分类Dev

MongoDB-无需应用程序的手动引用

来自分类Dev

检测是否手动关闭了应用程序

来自分类Dev

在应用程序中手动终止FB会话

来自分类Dev

手动编辑会话的启动应用程序?

来自分类Dev

检测是否手动关闭了应用程序

来自分类Dev

C#-手动关闭表单应用程序

来自分类Dev

手动连接应用程序洞察

来自分类Dev

手动安装的应用程序的优先级

来自分类Dev

如何在Xcode(iOS)模拟器中手动安装应用程序

来自分类Dev

我该如何手动更新我的应用程序的recyclerview?

来自分类Dev

如何创建带有手动依赖Java应用程序

来自分类Dev

如何更新Openshift中从git手动创建的应用程序?

来自分类Dev

如何创建所有手动安装的应用程序的列表?

来自分类Dev

如何手动复制LXDE和其他应用程序之类的文件?

来自分类Dev

如何在Mint 17.3上手动添加启动应用程序

来自分类Dev

如何手动将用户添加到Web应用程序?

来自分类Dev

如何手动为Rails应用程序创建postgres数据库?

来自分类Dev

如何在iOS Swift应用程序中从Firebase手动发布数据?

来自分类Dev

无需使用Visual Studio即可将aps.net Web应用程序手动部署到Azure Web应用程序

Related 相关文章

  1. 1

    如何将手动部署的单实例应用程序重构为客户端部署的多实例或多租户应用程序

  2. 2

    如何手动将应用程序安装到“应用程序”列表中

  3. 3

    如何使从 .tar 手动提取的应用程序在“显示应用程序”中可用?

  4. 4

    在信息亭模式下手动更新Windows应用程序无效

  5. 5

    从横向启动应用程序时在IOS中锁定肖像方向

  6. 6

    Apple批准后在AppStore上手动发布应用程序

  7. 7

    即使在手动启动应用程序后也未收到 BOOT_COMPLETED 广播

  8. 8

    Android-单击按钮时手动更改应用程序区域设置

  9. 9

    手动终止应用程序后,将应用程序返回到后台进行蓝牙事件处理

  10. 10

    C#-手动关闭表单应用程序

  11. 11

    MongoDB-无需应用程序的手动引用

  12. 12

    检测是否手动关闭了应用程序

  13. 13

    在应用程序中手动终止FB会话

  14. 14

    手动编辑会话的启动应用程序?

  15. 15

    检测是否手动关闭了应用程序

  16. 16

    C#-手动关闭表单应用程序

  17. 17

    手动连接应用程序洞察

  18. 18

    手动安装的应用程序的优先级

  19. 19

    如何在Xcode(iOS)模拟器中手动安装应用程序

  20. 20

    我该如何手动更新我的应用程序的recyclerview?

  21. 21

    如何创建带有手动依赖Java应用程序

  22. 22

    如何更新Openshift中从git手动创建的应用程序?

  23. 23

    如何创建所有手动安装的应用程序的列表?

  24. 24

    如何手动复制LXDE和其他应用程序之类的文件?

  25. 25

    如何在Mint 17.3上手动添加启动应用程序

  26. 26

    如何手动将用户添加到Web应用程序?

  27. 27

    如何手动为Rails应用程序创建postgres数据库?

  28. 28

    如何在iOS Swift应用程序中从Firebase手动发布数据?

  29. 29

    无需使用Visual Studio即可将aps.net Web应用程序手动部署到Azure Web应用程序

热门标签

归档