代码之家  ›  专栏  ›  技术社区  ›  anonymox

根据xcode 7.1中的屏幕方向使用不同的图像

  •  0
  • anonymox  · 技术社区  · 8 年前

    我有一个视图控制器,这是我的主要布局,它由一个具有5个水平图像视图的堆栈视图组成。当我在纵向模式下运行我的应用程序时,没有问题。

    但我的问题是,当我将视图或方向设置为横向时,图像视图不可用,图片对我来说也不可用。我为横向模式设计了不同的图像,我想在屏幕方向上将不同的图像设置为图像视图,但不知道如何设置。

    我不想创建两个子视图,并在其中加载一些用户为此问题建议的不同图像视图。

    有什么建议可以实现这一点吗?

    2 回复  |  直到 8 年前
        1
  •  1
  •   Prabhu.Somasundaram    8 年前

    你的问题不是第一个。通过调用[[UIApplication sharedApplication]statusBarOrientation]可以找到方向。您可以更新uiimageview,您想在代码uiimge->中更新该视图;imagenamed方法。它们是在运行时检测方向变化的两种方法,

    1.加速计

    2.[[UIDevice currentDevice]开始生成设备定向通知];

        2
  •  0
  •   Mohammad_Hosseini    8 年前

    您可以使用didRotateFromInterfaceOrientation更改图像值: 重写func didRotateFromInterfaceOrientation(fromInterfaceOrorient:UIInterfaceOrrientation){

        switch UIDevice.currentDevice().orientation{
        case .Portrait:
            image_1.image = UIImage(named: "image_1")
        case .PortraitUpsideDown:
            image_1.image = UIImage(named: "image_1")
        case .LandscapeLeft:
            image_1.image = UIImage(named: "image_1_land")
        case .LandscapeRight:
            image_1.image = UIImage(named: "image_1_land")
        default:
            image_1.image = UIImage(named: "image_1")
        } 
    }