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

Use different images depending on screen orientation in xcode 7.1

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

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

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

有什么建议可以实现吗?

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

1.Accelerometer

2.[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];

您可以使用 didRotateFromInterfaceOrientation 来更改图像值: 重写 func didRotateFromInterfaceOrientation(fromInterfaceOrientation: UIInterfaceOrientation) {

    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")
    } 
}