UITableView作为AppDelegate中的子视图

时间:2012-12-21 20:07:58

标签: objective-c ios xcode ios6

令人惊讶的是,世界今天没有结束,我继续编码,

我制作了UITableViewController,它在使用segue时非常好用,但我想在AppDelegete中制作这个控制器子视图(制作像facebook这样的侧边菜单)。

所以我的AppDelegate(didFinishLaunchingWithOptions)我添加了这个:

UIStoryboard* sb = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];

SideMenuViewController * rm = (SideMenuViewController *)[sb instantiateViewControllerWithIdentifier:@"RightMenu"];

[self.window addSubview:rm.tableView];

它添加了表格,表格正确呈现, 直到我点击某个单元格或尝试滚动, 突然,这张桌子上的所有东西都消失了, 我看到完全空表,没有部分,也没有单元格。

我该怎么办? 它可能是一些委托问题,因为它在AppDelegate中实例化了?

非常感谢!

2 个答案:

答案 0 :(得分:1)

您必须设置rootViewControlle的{​​{1}} r属性。可能这将有所帮助..在将表添加为子视图和控制器实例化之间插入此代码:

window

答案 1 :(得分:0)

我对故事板没有任何经验,所以这是一个疯狂的猜测:SideMenuViewController实例在用于填充初始表视图后是否被释放? UIStoryboard对象肯定似乎没有保留,但我不确定instantiateViewControllerWithIdentifier:返回的控制器。