// Create and add a sub view
CGRect viewRect = CGRectMake(0, 0, 200, 200);
UIView *a_sub_view = [[UIView alloc] initWithFrame : viewRect];
[window addSubview : a_sub_view];
添加上述3行代码后,xcode不会产生错误或警告。但子视图根本没有显示。示例程序似乎与以前完全一样。希望有人知道可以提供帮助。
答案 0 :(得分:15)
我发现设置背景颜色非常有用,因此我知道视图的位置和边界。
a_sub_view.backgroundColor = [UIColor redColor];
在您的示例中,您将创建一个空视图,这样您就不会“看到”任何内容。
答案 1 :(得分:3)
窗口需要添加一个viewcontrollers视图。
然后您可以将子视图添加到当前视图。
所以在你的例子中使用:
[self.view addSubview:a_sub_view];
答案 2 :(得分:3)
我正在使用它来“找到”窗口:
UIWindow *window = [[[UIApplication sharedApplication] delegate] window];
[window addSubview:myView];
这对我也有用,但有点丑陋:
[self.navigationController.tabBarController.view addSubview:myView];
为了解释第二个,我必须“跟随”控制器回到“顶部”视图。 (我的应用程序在当前选项卡中有一个带有导航控制器的标签栏。)
答案 3 :(得分:1)
如果您正在使用iOS 5&以上,你必须做如下:
[self.window.rootViewController.view addSubView:viewObject];
答案 4 :(得分:-1)
[self.view addSubView: a_sub_view];