【问题标题】:Image displaying in iOS7, but not iOS6.1在 iOS7 中显示图像,但在 iOS6.1 中不显示
【发布时间】:2013-09-25 18:00:58
【问题描述】:

我有一个标准的UIImageView,我正在创建它...

UIImage *someImage = [UIImage imageNamed:@"some_image"];
self.imageView = [[UIImageView alloc] initWithImage:someImage];

图像在 iOS7 上显示正常,但在 iOS6.1 (Retina 4) 上消失,即显示空白区域而不是图像。我在资产目录中有两个图像文件(非视网膜和@2x),我知道它们加载得很好(因为我在 iOS7 上运行时会显示图像),那么是什么解释了它们在 iOS6.1 中的消失?

【问题讨论】:

  • 已添加,但我不确定它是否很有用!正如我所说,在 iOS7 上工作得很好,但在 iOS6 上不行,我怀疑这与 UIImageView 分配有关。
  • initWithImage 采用 UIImage,而不是 NSString。这真的是您使用的代码吗?
  • 糟糕,抱歉 - 已更新。但同样,这与我加载视图的方式无关,因为视图在 iOS7 中加载得很好。
  • 您的图像视图靠近视图底部吗?在 ios 6 中它可能位于屏幕下方,因为 ios 7 的视图默认位于导航和状态栏的后面。
  • 不。拍打在视图的中间。也没有启用导航栏或状态栏。

标签: ios ios6 uiimageview ios7


【解决方案1】:

我遇到了同样的问题,就我而言,我发现问题出在 IB 中,我在 Size Inspector 中选择了所有 4 个角的 Autosizing。我取消了底部和右侧的选择,问题就解决了。

【讨论】:

    【解决方案2】:

    imageView 是一个 IBOutlet 吗?

    为什么你不使用:

    self.imageView.image = [UIImage imageNamed:@"image_name"];
    

    【讨论】:

    • 对不起,被代码 sn-p 误导了。已更正。但老实说,我认为这个问题与我创建 UIImageView 的方式没有任何关系 - 因为图像在 iOS7 中加载得很好,而不是在 iOS6 中。
    【解决方案3】:

    原来问题出在资产目录上。 “通用”(默认)图像集具有误导性,因为它看起来实际上并不通用。在此问题自行解决之前,我需要检查此图像下的 IB 资产目录选项中的“iPhone”和“R4”,然后为每个尺寸生成所有尺寸的图像。非常混乱且不直观。

    【讨论】:

      【解决方案4】:

      这个对相关问题的回答为我解决了这个问题。长话短说:您的 UIImageView 可能缺少约束。

      Xcode 5 - Storyboard - Has no constraints

      【讨论】:

        猜你喜欢
        • 2013-11-27
        • 2011-07-02
        • 2015-12-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-06-24
        • 1970-01-01
        • 2021-07-11
        相关资源
        最近更新 更多