为什么我以编程方式生成的按钮不会将自己附加到当前视图?

时间:2010-08-18 23:48:43

标签: iphone uiviewcontroller uibutton pushviewcontroller

下面的代码生成一个按钮并将其放在屏幕上;

button = [UIButton allow] initWithFrame:CGRectMake(0.0,0.0,20.0,20.0)]; button.frame = CGRectMake(0.0,20.0,10.0,40.0); button.backgroundColor = [UIColor redColor]; [self.window addSubview:button];

然而,当我通过“pushViewController:animated”生成一个新屏幕以重叠当前屏幕时,按钮会在新屏幕上浮动。但是通过“界面”构建器附加到旧屏幕的所有其他内容都会消失在新屏幕背后的正确方式。

那么,我做错了什么?

谢谢,

1 个答案:

答案 0 :(得分:2)

您想要将按钮添加到当前视图,而不是其下面的窗口。您应该在当前可见的UIViewController的loadView中创建按钮。尝试将其添加到该控制器的视图中,如下所示:

[self.view addSubview:button];