我正在尝试从我的启动屏幕中获得一个图像来显示为启动屏幕。故事板文件,但图像从不显示。我有标签显示良好,但图像不出现。
这是启动屏幕在启动屏幕中的外观。故事板文件:
然而,当我在模拟器(以及物理设备)上运行应用程序时,显示如下:
如您所见,标签“Test”显示良好,但图像没有显示。我真的不知道为什么会发生这种情况,我尝试的任何方法似乎都不起作用。如果任何人有任何关于如何解决这个问题的想法,这将是非常感激的。
我正在尝试从我的启动屏幕中获得一个图像来显示为启动屏幕。故事板文件,但图像从不显示。我有标签显示良好,但图像不出现。
这是启动屏幕在启动屏幕中的外观。故事板文件:
然而,当我在模拟器(以及物理设备)上运行应用程序时,显示如下:
如您所见,标签“Test”显示良好,但图像没有显示。我真的不知道为什么会发生这种情况,我尝试的任何方法似乎都不起作用。如果任何人有任何关于如何解决这个问题的想法,这将是非常感激的。
You have to make sure that the file name of your image has a format like .png or .jpg at the end otherwise it will not work. Also, before adding your image, you have to make sure that the image file is in your "Assets.xcassets" folder within your project. This can be done with a simple drag and drop. Also, make sure when you've added your image to your storyboard that the image name in the top left also matches the real image file name. I would try looking into Constraints too. Hope this helps. Good luck with your App.
它发生在我身上,让我疯狂,让我失去了几分钟,直到我弄清楚。
就像之前说过的
导入想要的图像到你的Xcode项目(只需拖放它) 改变它的约束和对齐 更新框架解决自动布局问题 在属性检查器选项卡菜单(通常在右边的菜单xCode),在图像视图>图像,删除图像扩展名(.png或.jpg) -这是诀窍
在设计屏幕上,它不会出现,但当你运行应用程序时,它会显示出来。
希望能有所帮助!
我在这个问题上花了几个小时才终于意识到我的错误。当你添加一个图像到UIImageView时,它只会使用图像的名字。如果你的图片和你的故事板在不同的文件夹中,它们会在xcode中显示,但在运行应用程序时不会。你必须添加适当的文件路径前缀,例如images/image.png。它现在会在xcode中显示为一个蓝色的问号,但它在应用程序中是有效的。
在重新启动Xcode后,清理构建和一些关于这个问题的其他建议。对我来说,真正解决问题的是重新启动设备。(我在这上面浪费了一个多小时)
我想这只是表明,老话说你关闭了它,然后再打开它仍然适用于最新的小玩意!
如何重启iPhone XS或iPhone XS Max
快速按下并释放音量增大按钮 快速按下并释放音量调低按钮 按住侧边键,直到苹果logo出现
I just figured this out. My launch image was not showing up, I get a white screen when launching on a device (iPhone 6, 7+) or testFlight. Fix: Renamed "Landing_screen.png" to just "Landing_screen" removing .png part. The image icon in Xcode changed to white icon and in the launch screen storyboard the image appears as a question mark now. The Launch image now appears and not the white screen. My Setup: I am using Swift 3.1 with Xcode 8.3.1. In LaunchScreen.storyboard I added a simple image view and stretched the image to fit the view controller. I set auto layout constraints Top/Bottom/Leading/Trailing space to superview to 0 - see image below:
在我的例子中,我有一些视图仍然链接到视图控制器那现在只是一个基本的视图控制器。如果我控制点击视图,我可以看到带有警告的出口,然而,警告并没有出现在Xcode中,这就是为什么我很难找到它们。
我也面临同样的问题。
添加一个新的图像集到XcodeAssets。 将图像添加到映像集中。 添加图像视图,以启动屏幕和设置您的imageset为图像 在Imageview的属性检查器中,取消选中“清除图形上下文” 清理生成文件夹并再次运行。
到目前为止,有视网膜设备可用,我忽略了Assets.xcassets中的@1x图像。
在我的情况下,我有应用程序的logo在启动屏幕是不可见的,当我运行应用程序。
在浪费了这么多时间后,我发现我只提供了@2x和@3x图像的标志图像。
通过添加该图像的@1x版本,可以解决此问题。
我也遇到过同样的问题。我尝试了不同的解决方案,但都无济于事。然后我意识到,只有当我直接将应用程序安装到设备中,应用程序仍然连接到xcode时,图像才不可见。如果我断开它,然后打开应用程序的图像是可见的预期。 这可能是一个xcode错误。
我尝试清理项目,删除png,删除约束,但对我来说没有用。
我只是做了一个图像的副本和重命名的副本,然后删除旧的图像,并添加了新的图像(相同,与名称更改),我只是给了那个图像,它为我工作。
我也没有使用资产。Xcassets,使用文件夹中的图像。
最后,重启电话对我有用!!
我在这个问题上花了好几个小时。尝试过更改图像名称,删除整个图像资产,修改信息。plist,重新启动Xcode,甚至试图设置所有的图像属性(你可以看出我是多么绝望)。
在尝试了几个StackOverflow线程后,以下是对我有效的方法:
使用。png格式 不要将它包括在您的资产目录中。将它直接添加到项目的层次结构中,就像添加任何源文件一样。 在图像视图中,加载图像及其扩展。例如:launch_app_image.png
(可能需要清理产品或衍生数据来更新,但我不需要)
正在改变背景图像的启动屏幕和新的图像不显示(反应原生项目)。
根据别人的回答。
我做了以下所有的事情,它是固定的:
清洁的构建。 从模拟器中删除应用程序 退出模拟器 重启XCode 再次运行app
我尝试了很多东西(这个线程似乎有一百万个想法,其中一半是相互冲突的)。我的问题是,当我重新启动设备和Xcode时,它会导致图像在应用程序的几个会话中显示,然后它会停止(我不知道为什么,但哇,这很烦人)。
过了无数个小时,我发现a。g的答案是正确的。我做错的一件事是我在xcassets中创建了一个新的图像集,但我仍然在使用故事板中的UIImageView中的图像名称,而不是使用图像集的名称。
为了澄清,你要做的是创建一个新的图像集,并将其命名为“Launch-Defaults”,然后将你的图像添加到它。然后,在故事板的UIImageView内部,你使用图像“Launch-Default”(不包括扩展,因为没有,因为这是一个图像集)。
When you do all of that, the image should actually appear correctly inside of your storyboard. Some people say the image will display blank if you don't use the extension (.jpg or .png), but I assume that is because they are not using the name of the image set. Others say you need to use an extension like .png or .jpg, but the key is to create the image set inside of xcassets and then use that image set inside of the storyboard. When done correctly, there should be no funkiness like an image not showing up or the Launch Screen only working some of the time (requiring a reboot).
在我的例子中,启动画面适用于模拟器和其他设备,但不适用于某一特定设备。这让我相信这是xcode (v10和iPhone 7 v12.1)保存的一些缓存数据。
我在~/Library/Developer/Xcode/DerivedData/删除了派生数据,只清空文件夹内容,而不是删除文件夹。然后我重启了mac和iPhone,清理并重建了这个项目,现在它出现了。
我不确定所有这些是否都是必要的,但我不想浪费更多的时间来缩小范围,所以上面的大锤方法对我来说很有效。当然,这总是取决于你的具体情况——我的是特定设备;对于其他人来说,它可能是实际的图像或启动屏幕布局等。
我的第一个错误是,我创建了一个普通的.storyboard,重命名它,并在项目设置中将其定义为launchscreen。在这个案子里,我的形象有问题。在这种情况下,似乎有些设置缺失了,所以我只是通过file->new创建了一个新文件,并直接选择“启动屏幕”,然后它就工作了。
此外,我还考虑到,由于某些原因,布局限制在启动屏幕中不受支持。也许一开始是这样的,不确定,但现在约束应该起作用了。
也许这对任何人都有帮助。
当使用launch-storyboard显示启动画面时,我也遇到了同样的问题,经过研究,我发现我在launch-storyboard中设置的图像大小不同,我设置的图像视图比图像的实际大小更大。
所以我找到的解决方案是设置图像-视图内容大小为方面适合或设置图像-视图大小为图像大小。
比如,如果你的图像@1x的大小是200X200,那么图像视图应该是200X200,那么你就可以解决这个问题。
因为如果你设置图像视图的大小大于图像,那么图像将被上浆,这是不允许的。
如果你还有任何疑问,请在这里评论并询问
对我来说,这不仅仅是重启设备那么简单。 我的发射图像存储在其他资产(其他Pods)。
不得不将图像移动到应用程序项目的资产。 然后重启了我的设备。(首先检查模拟器,它应该工作)。 然后就成功了。
图片可以是png/pdf格式,单比例或不重要。
我的问题。
原因:我在拖拽到Xcode后重命名了图片。 解决方案:在拖拽到Xcode后不要重命名图像。这给理解Xcode带来了问题。在拖动或添加到Xcode之前重命名图像。
希望它能帮助你!
在投入了大量的时间后,我得到了解决方案:-
Step 1:- Quit Xcode
Step 2:- Delete the app from device/simulator
Step 3:- Restart your device (if you are using simulator then you have to quit simulator)
Step 4:- Clear all derived data
Step 5:- Clear Bin
Step 6:- Open Xcode and relaunch the app, it will work
实际上,对于一些重量级图像,将它们添加到图像中并不是一个好情况。Xcassets,因为应用程序加载图像。Xcassets轻量级图像在发布前。所以我把启动画面图像放在加载的第一个根,然后问题就消失了:
在项目的根目录中创建一个新的Group 拖放你的图像在黄色组文件夹内 将其重命名为不同的特殊名称 回到xib(或storyboard)文件,并将ImageView定位为步骤3中的特殊名称。 清理和重建,然后你可以看到你的形象。
提示:您可以在图像中创建您的ImageSet。Xcassets但是把它们放在项目的根目录中。
在我的例子中,我可以通过取消对Launchscreen故事板中使用的所有图像视图的属性检查器中的“清除图形上下文”来修复它。
为了你的信息,我已经在资产中导入了图像。PNG格式的Xcassets。
在我的案例中有两个问题解决了它:
似乎有1MB的图像大小限制;没有文档,但当我优化相同的图像从3MB到1MB以下,它工作。这是有意义的,因为操作系统希望启动屏幕尽可能轻。 操作系统确实积极缓存启动屏幕!为了看到我的启动屏幕变化,我必须每次重置模拟器:Device > Erase所有内容和设置
我陷入了同样的问题,感谢下面的参考,我能够解决这个问题
https://developer.apple.com/forums/thread/19759?answerId=75438022#75438022
虽然没有必要在为imageview选择图像时更改图像名称和删除扩展名,但我只是简单地创建了一个名为resources的文件夹,并将我的图像添加到该文件夹中,因为我认为将图像直接放入根文件夹中并不好
希望这能有所帮助。
调试快乐!