查看已添加但不可见(通过Storyboard添加的组件不可见,但通过代码添加的组件)

时间:2012-07-19 05:18:07

标签: iphone cocoa-touch

查看结构

我使用故事板创建了两个视图(“主页”视图和“菜单”视图,如下所示):

enter image description here

'Home'视图是带有'静态'单元格的表格视图。菜单视图也是一个带有“动态”(填充了从数据库中获取的数据)单元格的表。

面临的问题 当应用程序启动时,我想显示“菜单”视图,&在它上面(即隐藏它),我想显示'Home'视图(就像Facebook或Path app一样),这样当主页视图被平移/拖动/滑动时,下面的视图即'菜单'视图被显示)。

我在菜单视图的'viewDidLoad'方法中执行此操作:

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.viewControllerHome = [[ViewController_Home alloc] init];
    self.viewHome = self.viewControllerHome.view;
    self.viewHome.frame = CGRectMake(0.0,0.0,320.0,480.0);
    [self.view addSubview:self.viewHome];                                     
 }

子视图'viewHome'似乎确实已添加,但它不可见(尽管我已设置了帧大小)!我甚至尝试在视图上说“setVisible = YES”,但是徒劳无功。我肯定地说它已被添加,因为,我在“Home”视图中“通过代码”添加了一个表情符号(在Home View Controller代码中使用self.addSubview)。这个表情符号是可见的!,但不是我使用Storyboard设计的其他组件。请参见下文:主页视图的表情符号位于页面的左下角,但视图的其余部分是“不可见”。当我点击“view1”,view2'等时,它没有被选中,这意味着View Home位于其上面,但不可见(我通过将视图主页调整为各种高度来检查这一点。)

这是Home View的Storyboard属性列表......我认为'view'连接不正常......我是对的吗?

enter image description here

故事板中的视图层次结构

enter image description here

1 个答案:

答案 0 :(得分:0)

经过半天多的挣扎,我找到了答案!

这就是我所做的&它有效:

UIStoryboard *myStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
ViewController_Home *viewControllerHome = (ViewController_Home *)[myStoryboard instantiateViewControllerWithIdentifier:@"ViewController_Home"];