我想在IB中构建一个大视图,然后将其添加到我的滚动视图中。为此,我遵循了these instructions。
我的视图在滚动视图中正确绘制,但无法滚动。我记录了内容大小并且一切正确:Content view size: 320.000000 x 714.000000
当我用[self.view addSubview:self.contentView];
替换时
[self.view addSubview:[[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 1)]];
滚动视图正如预期的那样是空的,但至少显示了滚动条,我可以滚动。我在nib文件中的视图有问题吗?
这是我的viewDidLoad
:
[super viewDidLoad];
[self.navigationController setToolbarHidden:YES animated:YES];
NSLog(
@"Content view size: %f x %f",
_contentView.frame.size.width,
_contentView.frame.size.height);
[self.view addSubview:self.contentView];
((UIScrollView *)self.view).contentSize = self.contentView.frame.size;
我的代码唯一的区别是,我在导航控制器中有滚动视图。这有什么不同吗?
答案 0 :(得分:1)
问题出在第4点,即“将文件所有者的视图出口设置为滚动视图”。而不是在头文件中设置scrollview的出口。 并改变viewDidLoad的代码:
- (void)viewDidLoad
{
[super viewDidLoad];
[scrollview addSubview:self.contentView];
scrollview.contentSize = self.contentView.frame.size;
}
然后它的工作完美。
答案 1 :(得分:0)
应该如下所示
//Considering self.contentView as UIScrollView added in xib
UIView *view=[[UIView alloc] initWithFrame:CGRectMake(0,0,320,700)];
[self.contentView addSubView:view];
[self.contentView setContentSize:CGSizeMake(320,700)];
以上代码应该可以肯定..