添加子视图不起作用?

时间:2011-06-21 21:40:08

标签: iphone xcode ipad subview

我有两个xib文件:

MainView.xib和DetailView.xib

两者都由MainViewController控制。应用程序首次打开时会加载MainView.xib,但如果用户单击某个按钮,该应用程序会将DetailView.xib作为子视图加载。

DetailView应该加载,因为我在MainViewController中将一个IBOutlet创建到DetailView.xib文件中的视图。

我正在尝试使用addSubview命令,但由于某种原因它实际上并没有执行命令。它将通过命令,但实际上没有任何改变。这是命令:

[self.view addSubview:myDetailView]

其中myDetailView是IBOutlet

此设置有什么问题?

感谢您的帮助。

编辑:

MainViewController.h(左侧生成的代码):

IBOutlet UIView *myDetailView;

@property (nonatomic, retain) IBOutlet UIView *myDetailView;

MainViewController.m:

@synthesize myDetailView;

2 个答案:

答案 0 :(得分:0)

在添加子视图之前,

NSLog myDetailView,如果返回“(null)”,则myDetailView尚未初始化。确保已在Interface Builder中连接视图。

答案 1 :(得分:0)

我打赌myDetailView是零。 它可能是IBOutlet,但必须连接。显然应该加载你连接IBOutlet的XIB。

您是如何在代码中加载DetailView.xib的?您使用的是loadNibNamed:owner:options:吗?