如何使用scrollview获取uinavigationbar和uitoolbar之间的空间

时间:2010-05-09 17:27:41

标签: iphone uinavigationcontroller uiscrollview uitoolbar

我有一个scrollview,我不得不将视图控制器的视图推送到UINavigationController。 我的导航栏不透明。

但是,scrollview似乎保持整个父视图的大小。我希望scrollview具有工具栏和导航栏之间的空间大小。

这是可能的还是我必须对某些尺寸值进行硬编码?

提前致谢

2 个答案:

答案 0 :(得分:2)

初始化scrollView时,可以设置其contentSize参数:

 [scrollView setContentSize:CGSizeMake(320,392)];

屏幕高度(480)减去工具栏(44)和导航栏(44)= 392.如果您还显示载波状态栏,则将其降至372。

或,使用框架几何属性:

[scrollView setContentSize:CGSizeMake((scrollView.superview.frame.size.width),
                                      (scrollView.superview.frame.size.height -
                                       toolbar.frame.size.height - 
                                       navigationController.navigationBar.frame.height))];

答案 1 :(得分:0)

使用自动调整大小时,viewDidLoad上不知道正确的帧大小。 你应该将它打包在viewWillAppear中,然后一切正常

scrollView.contentSize = CGSizeMake(scrollView.superview.frame.size.width, scrollView.superview.frame.size.height);