首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >appDelegate中的UIImageView显示在模拟器中,但不在设备上

appDelegate中的UIImageView显示在模拟器中,但不在设备上
EN

Stack Overflow用户
提问于 2012-07-23 21:44:30
回答 1查看 411关注 0票数 0

我有一个奇怪的问题:我想在我的一个应用程序中有一个图标,它位于所有其他控制器/视图之上。我的想法是在处理内容视图的UITabBarController之上的主XIB-File (项目在iOS-5之前开始)中创建一个UIImageView。

我在appDelegate的didFinishLaunchingWithOptions中添加了ImageView

代码语言:javascript
复制
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    ...
    // Add the icon view that shows current working status (working/pause)
    [self.window addSubview:self.statusIcon];
    ...
}

最初ImageView是隐藏的,只有在按下按钮时才会显示。然后我将分配UIImage并将其取消隐藏:

代码语言:javascript
复制
AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[delegate.statusIcon setImage:statusIconWorking];
[delegate.statusIcon setHidden:NO];

这在模拟器中工作,但在设备上不起作用(在iPod touch 4. generation和iPad 3. generation (视网膜)上进行了测试)。

有人能告诉我它不是那样工作的吗?这不是图像问题(它存在于设备上,我试图加载ImageView中的其他图像,这些图像在应用程序的其他部分显示正确)。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2012-07-23 21:57:33

我曾经观察到同样的问题,但在这里没有找到解决方案。不过,一些提示是有帮助的,所以我最终确定了它。这种情况只发生过一次,在xcode版本更改后的几天我就注意到了。然而,我从来没有发现解决方案是什么,以及这是否真的是由版本迁移造成的。

原因是图像文件不是捆绑包的一部分。检查您的边界设置。对您可能拥有的每个目标执行此操作。

我的观察是:图像文件包含在模拟器上的捆绑包中。它不仅在从一个版本到下一个版本中保持不变。即使我从模拟器中删除了应用程序,它也被重新安装了。我这样做了,要么使用模拟器的gui删除它,就像从真实设备中删除一样,然后手动从模拟器的文件系统中删除它-只是为了确保。在任何情况下,都会重新安装该文件。

在设备上则有所不同。创建IPA或应用程序捆绑包,就像您为提交到商店的beta测试人员所做的那样。去看看吧。(将文件名更改为.zip并解压缩可能有助于查看包。)我敢打赌,你不会在那里找到你的形象。

解决方案:仔细检查您的项目设置,并确保分别为所有目标正确包含所有资源。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11613789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档