我有一个scrollview,我不得不将视图控制器的视图推送到UINavigationController。 我的导航栏不透明。
但是,scrollview似乎保持整个父视图的大小。我希望scrollview具有工具栏和导航栏之间的空间大小。
这是可能的还是我必须对某些尺寸值进行硬编码?
提前致谢
答案 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);