使用self.view.frame的initWithFrame:是否有必要?

时间:2011-09-07 15:22:51

标签: ios objective-c uiscrollview

我想知道在这个scrollView中使用initWithFrame的真正含义是什么,因为我们之后还设置了scrollView的维度,我们将scrollView添加为视图的子视图。

那么为什么我们需要指定这个initWithFrame?当框架是self.view.frame时,我实际上并不是真的理解它(如果我们设置一个不同的矩形,我会理解它更好,例如0,0,50,50)

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:self.view.frame];

scrollView.contentSize = CGSizeMake(847, 1129);
UIImageView *imageView = [[UIImageView alloc] initWithImage: image];
[scrollView addSubview:imageView];
[self.view addSubview:scrollView];

由于

1 个答案:

答案 0 :(得分:2)

在这种情况下,

self.view是包含scrollview的视图,因此当设置为self.view.frame时,scrollview会填充整个视图。框架和内容大小是不同的东西 - scrollview的框架定义了scrollview的可见部分,内容大小定义了滚动视图中可滚动(可缩放)内容的大小。