将Kal添加为子视图时出现奇怪的空间问题

时间:2012-08-14 22:06:18

标签: ios xcode storyboard kal

Kalendar和导航栏之间的黑色空间太大。这是我正在谈论的图片:

kalview

我正在调用我在故事板中的ViewController的ViewDidLoad中的代码:

- (void) viewDidLoad {
    KalViewController *calendar = [[KalViewController alloc] init];
    [self.view addSubview:calendar.view];
}

我只是在学习使用Kal。也许我打算以错误的方式加入它。我确实喜欢使用故事板链接我的视图,所以我的viewcontroller包含“Kal.h”,我实例化如上面的代码所示。我试图让viewcontroller成为KalViewController的子类,但是没有用。

也许有更优雅的方式将Kal合并到故事板视图控制器的层次结构中?

2 个答案:

答案 0 :(得分:1)

只需添加以下内容:

[[self navigationController] initWithRootViewController:calendar];
[[calendar navigationItem] setHidesBackButton:YES];

它应该做的伎俩。第二行用于隐藏“返回”按钮,否则会显示,但对我来说这是一个单一的屏幕应用程序,您可能想也可能不想使用它。

答案 1 :(得分:0)

我使用了与最初ACB完全相同的代码,遇到完全相同的问题,但在创建日历视图后我也包含了[self addChildViewController:calendar];

这段代码有什么作用? [self addChildViewController:calendar];

我理解它“添加了一个子视图控制器”,但真正发生了什么......我应该需要这个吗?显然不是因为你没有,我只是在没有它的情况下编译我的代码而且没有区别。

整体代码:

KalViewController *calendar = [[KalViewController alloc] init];

[self.view addSubview:calendar.view];

//[self addChildViewController:calendar];
相关问题