XCode 8不在故事板中显示图像
更新xcode后,故事板中的所有图像都显示为问号(因为它没有find它们)。 我试图删除/添加它们,清除派生的数据,但仍然所有图像视图显示quesiton标记。 如果有人有什么想法可能是什么问题?
我有同样的问题,我发现,这是因为我没有与故事板中select“视图为”设备(左下angular)对应的大小的图像。
如果您select了需要@ 2x图像的设备(例如:iPhone 6s),并且只有@ 3x图像(就像我一样),您将看到问号。 如果为与故事板所使用的设备大小相对应的图像添加大小,则该图像将出现在imageView中。
基本上,你想要所有3种尺寸的图像:@ 1x,@ 2x和@ 3x。
如果您在模拟器中运行项目并显示图像,则这不是问题。 有时候你会改变size classes
那么也会发生这种情况。 例如,如果您使用多个大小类如wA,hA
和wC,hr
并且您为any,any
compact,regular
设置了约束,并且如果您保留any,any
在interfacebulder中select的any,any
那么它将正确显示图像,但是如果您更改它compact,regular
然后它会因为simulated metrics's size
鞋question mark
。 所以,如果它不影响输出,那么这不是一个问题!
您必须为您的图片使用xcassets目录:
1)访问Assets.xcassets
2)创build新的图像集或从列表中select并更新现有的
3)将您的图像变体放入@ 1x,@ 2x和@ 3x尺寸 :
在您的代码中调用您的图像,如:
let image = UIImage(named: "NewImageName")
那么我是在相同的情况,并知道Xcode 8故事板删除帧,这就是为什么图像不显示。 因此,你必须对uiimageviews设置适当的约束,然后你必须通过编写这段代码来强制约束。
UIImageView *uiv = [cell viewWithTag:100]; [uiv setNeedsUpdateConstraints]; [uiv setNeedsLayout]; [uiv layoutIfNeeded];
如果您要处理的资产中只有3张图像,并且您已经将“初始设备视图”select到某个2x设备,请执行以下操作:
- 在Xcode 8中打开Storyboard文件。
- 转到文件检查器 – >接口生成器文档。
- 打开 – >selectXcode 7.x
- 保存并closures故事板。
- 再次打开故事板并select初始设备视图到iPhone6s Plus。