无法在 didFinishLaunchingWithOptions 中将 UIImageView 添加到 self.window

Posted

技术标签:

【中文标题】无法在 didFinishLaunchingWithOptions 中将 UIImageView 添加到 self.window【英文标题】:Cant Add UIImageView to self.window in didFinishLaunchingWithOptions 【发布时间】:2013-01-26 20:57:13 【问题描述】:

我正在尝试添加 UIImageView 作为我的 Default.png 消失后显示的第一个视图。这应该非常简单,但由于某种原因,我遇到了黑屏。

// AppDelegate.m

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  

UIImageView *newimageview = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
[newimageview setImage:[UIImage imageNamed:@"myimage.png"]];


[_window addSubview:newimageview];
[_window bringSubviewToFront:newimageview]; 


我还尝试设置 newimageview 的背景颜色,看看我是否没有正确加载我的图像文件,但屏幕仍然显示为黑色。

任何帮助将不胜感激,我现在​​觉得很愚蠢。

我刚刚创建了一个新项目,只修改了 didFinishLaunchingWithOptions 方法。这正是我正在使用的代码。我在项目中没有改变任何其他内容:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

    UIImageView *newimageview = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"bg-basketball"]];

    [self.window addSubview:newimageview];
    [self.window bringSubviewToFront:newimageview];

    // Override point for customization after application launch.
    //self.window.backgroundColor = [UIColor whiteColor];
    //[self.window makeKeyAndVisible];
    return YES;

我仍然得到相同的黑屏结果。

我已将 bg-basketball.png 和 bg-basketball@2x.png 添加到我的项目中,并且可以在 XCode 中看到这两个图像。

【问题讨论】:

你真的创建了窗口吗?查看空应用程序中的默认代码,看看它们是如何分配初始化窗口的。 1) 检查_window 是否不为零。 2) 拨打makeKeyAndVisible就可以了 【参考方案1】:
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];//Add this line

这对我有用。

【讨论】:

以上是关于无法在 didFinishLaunchingWithOptions 中将 UIImageView 添加到 self.window的主要内容,如果未能解决你的问题,请参考以下文章

推送通知进入时调用的方法序列

iOS:在应用程序委托中加载应用程序后选择一个选项卡

在NTFS分区上加密的文件夹在重装后无法访问(无法去掉加密)

包无法在 R 中卸载:无法安装包

无法在 SQL Server 视图中使用工作查询:“IS”无法识别“>”无法识别

无法在春季导入 org.apache.poi,因此无法编译