在 iOS7 中将多个图像加载到单个视图控制器中的方向/分辨率问题
Posted
技术标签:
【中文标题】在 iOS7 中将多个图像加载到单个视图控制器中的方向/分辨率问题【英文标题】:Orientation/Resolution Issues with multiple images loading into single View Controller in iOS7 【发布时间】:2013-09-19 14:54:59 【问题描述】:我有一个带有 UIImage 视图的视图控制器,它根据方向加载不同的 .png。它加载了两个图像,但是 1)横向视图被压缩并且没有正确缩放,以及 2)当我在模拟器中运行它并将它向右转动两次(命令 + ->)它再次垂直并且应该显示纵向图像,但它会横向显示横向图像。有任何想法吗?我的 .m 方法如下:
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation
if((self.interfaceOrientation == UIDeviceOrientationLandscapeLeft) || (self.interfaceOrientation == UIDeviceOrientationLandscapeRight))
_image1.image = [UIImage imageNamed:@"Landscape.png"];
else if((self.interfaceOrientation == UIDeviceOrientationPortrait) || (self.interfaceOrientation == UIDeviceOrientationPortraitUpsideDown))
_image1.image = [UIImage imageNamed:@"Portrait.png"];
我还缺少更多方向吗?有没有办法让肖像照原样(“缩放填充”)但以某种方式让风景也正确出现?值得一提的是,风景在 ios6 上正常显示,但现在在 iOS7 上的缩放比例很差。 iOS6 中也存在两个旋转 = 横向横向的问题。谢谢。
【问题讨论】:
【参考方案1】:我只是在 info.plist 中没有支持颠倒作为方向,这解决了旋转问题。
至于横向视图的缩放,需要大量处理自动布局和设置约束。没有什么特别的灵丹妙药在这里起作用 - 只是玩弄它直到它看起来像我想要的那样。所以在这个问题上一切都很好。
但是,当初始方向是横向并且我切换到另一个视图时,我遇到了问题,但我已将其放在另一个问题中。
【讨论】:
以上是关于在 iOS7 中将多个图像加载到单个视图控制器中的方向/分辨率问题的主要内容,如果未能解决你的问题,请参考以下文章
使用 Swift 3 在 iOS 10 中将图像从服务器加载到 Apple Map 中的注释视图
生成新单元格时清除集合视图单元格(iOS7 - AFNetworking)
在 Swift 中将图像视图从一个视图控制器转移到另一个视图控制器