我有一个UIView
,其中UIImageView
被拖到视图上。突然间,对于我的所有xib,图像不再显示。有一个蓝色的X.但是,当它建立时,图像就在那里。
有一次,我删除并重新生成了所有图像,并将一些图像移动到Xcode中的子文件夹中。通常,当您选择UIImageView
的图像时,IB允许您从项目中的任何图像中进行选择。但是,我无法在下拉列表中看到我放在文件夹中的任何图像。
我在Inspector的下拉列表中看到的只是我想要的一张图片,但那也是没有出现的图片。就像我说的,如果我在设备或模拟器上构建它,它一切正常。
有些缓存或某些东西搞砸了。一切都没有错误。我清理了缓存并重建了。一切正常。没有错误或警告。但是......我看不到任何其他图像,IB仍然认为它丢失了在下拉列表中明确选择的图像。
那么我如何让Xcode和IB回到正轨并看看它应该在XIB中正确看到哪些资产?
答案 0 :(得分:18)
尝试清理并重建项目。
如果它仍然不起作用,则从Xcode中删除所有图像(仅选择删除参考),然后通过将这些图像拖动到Xcode中再次重新添加它们。然后重新构建它,它应该工作。
答案 1 :(得分:14)
我的收件人:CLEAN + Build + QUIT XCODE然后重新开始!
VOILÀ!!它在那里!
答案 2 :(得分:7)
确保在将图像拖入项目时将图像添加到目标。因为Xcode的文件夹/组/项目系统有问题,请单击图像并检查它是否实际添加到检查器中的目标版本中,如图所示(图形问题需要图形答案!):
将图像添加到项目中......
添加到目标......(或者我们认为)
背景图片在Interface Builder中很好地展示了......
但是当我们跑步时,我们只有我们设定的背景颜色......没有图像......
在Interface Builder中单击UIImageView并使用检查器,我们向下滚动并发现实际上它从未添加到目标中,就像Xcode在步骤2中清楚地显示的那样...
所以我们将它添加到目标......
我们建立并运行瞧!我们的图像在UIImageView中显示了它想要显示的位置。
这让我疯狂了一整天,直到我尝试添加代码才能让它发生,看看它是不是很好看。我通过创建下面的viewDidLoad实现添加它没有问题。
请注意,如果Xcode / Interface Builder按照预期的方式运行,则不需要此操作。用户IB或使用此代码,而不是两者:
- (void)viewDidLoad {
UIColor * theColor;
UIImage * theImage;
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
theImage = [UIImage imageNamed:@"/<redacted>/background sea green gradent.png"];
theColor = [UIColor colorWithPatternImage: theImage ];
[self.view setBackgroundColor: theColor ]; }
注意:如果您的按钮未显示自定义图片,则可能会出现同样问题...
答案 3 :(得分:3)
刚遇到这个问题。在Adobe Illustrator中导出相同的图像。一个是透明的,另一个是白色的。透明的一个出现了一个大的蓝色问号。运行它,然而工作正常。与IB和透明PNG有关的事情
答案 4 :(得分:2)
仅供记录(因为没有对我有用):
我们的项目中只有视网膜图形。更新到XCode 5
后,所有图片中都有一个白色问号(仅限于Interface Builder
,而不是Simulator
)。我们将图像源切换到non-retina
,这解决了这个问题!
使用btn-category-6.jpg
解决了问题!
答案 5 :(得分:2)
对我来说,这是因为图片在属性检查器中有一个“.png”。删除它修复了问题
答案 6 :(得分:1)
仅仅是一个FYI:我遇到了类似的问题。在某些时候图像被破坏了,它们都是透明的PNG!
我替换了文件,现在又重新显示了。当我通过运行Windows XP的Oracle虚拟盒中的Windows资源管理器复制文件时,可能发生了映像损坏。
答案 7 :(得分:1)
在我的情况下,当我在Xcode 6
中创建新项目时,我无法在模拟器和设备中显示图像。我已导入图像资源中的所有图像,在其中创建一个文件夹。现在我已导入所有图像,现在一切正常。现在所有图像都在显示。
请按照以下步骤操作:
第1步:
第2步:
第3步:
然后导入您需要的图像。参考链接: StackOverflow link
答案 8 :(得分:0)
对于我来说,我只需要单击我的资产并在其中短暂查看图像。然后我返回情节提要,并填充图像。
答案 9 :(得分:0)
对我来说,问题是,我可以在Show the media library
上看到新添加的图像文件,但是在我的按钮Image
的下拉列表中看不到
对我来说,解决方法是手动输入名称。当我开始在文本框中输入图像名称时,它将自动完成,仅此而已。 |
PS:在这样做之前,我还实施了选定的解决方案
答案 10 :(得分:0)
如果这些答案均无效,则可能的原因之一是: 如果您正在使用UIButton并在其中显示图像,请确保该按钮没有标题。因为按钮标题被截断,所以它将显示一个椭圆(...)。
答案 11 :(得分:0)
我曾经遇到过这个问题几次 - 有时候(我不太清楚为什么......),Xcode似乎忘记了UIImageView和你文件夹中的图像之间的联系。
然后可能就像转到该图像视图的属性检查器一样简单,如果图像框显示“未知图像”,则重新选择正确的图像!
答案 12 :(得分:0)
确保您的资源与您在Xcode的Interface Builder文件中查看的屏幕尺寸相匹配的图像比例。如果您在Xcode中使用资产目录,那么图像资产有@ 1x,@ 2x和@ 3x点,或者,如果您不使用它,那么您应该根据文件名区分不同的资产(例如“ image.png,image @ 2x.png,image @ 3x.png)。
您可能没有多个资产大小,只提供了1x或3x的资产,您可能正在Interface Builder中查看使用不同资产大小的设备类型的屏幕,因此SELECT m.id, m.title, s.id, s.title, c.id, c.title
FROM Main m LEFT JOIN Sub s ON m.id = s.parent_main_id
LEFT JOIN Cat c ON s.id = c.parent_sub_id
UNION
SELECT m.id, m.title, s.id, s.title, p.id, p.title
FROM Main m LEFT JOIN Sub s ON m.id = s.parent_main_id
LEFT JOIN Pro p ON s.id = p.parent_sub_id
' s图像不会在Xcode中呈现。例如,我正在查看iPhone 7的界面,它使用2x,但资产只有3x版本。当我添加一个2x版本时,它立即显示在Xcode的Interface Builder中。
请注意,即使它没有在Xcode中呈现,它仍然可以在运行时正确呈现。不过,最好以符合每种设备型号的分辨率提供资产。
答案 13 :(得分:0)
如果您设置了所有1x,2x和3x图像,清理并构建了项目但仍未正确显示,请退出Xcode并强制退出,然后再次打开Xcode。只需一个简单的Xcode重启就可以了。
答案 14 :(得分:0)
确保您引用实际存在的图片资源 。我像往常一样将我的文件添加到Xcode资产目录(.xcassets),但忘记重命名为默认名称&#34; Image&#34;我在故事板中使用的名称。
答案 15 :(得分:0)
属性检查器中我的图像名称末尾缺少.png
清理后,重新导入并检查正确映射的资产,没有任何效果,虽然我发现我的图像(这是一个png)出现在我在属性面板中的图像名称末尾输入.png后。
答案 16 :(得分:0)
当我将图像移动到xcassets时发生了这种情况。我通过删除检查器上的png和jpg扩展来解决它。
答案 17 :(得分:0)
我有好几次这个问题。并将项目目录复制到桌面,重命名原始文件夹,从新位置打开项目并再次将其移动到原始目录。所有那些“加载所有头文件”解决方案有时都有效,有时候不会
答案 18 :(得分:0)
我有相同的症状,但我只是将项目文件夹移动到桌面,从那里重新运行IB中的项目并且它有效!然后再次使用不同的名称将其重新放回到同一个父文件夹中......很奇怪。