0

我是 ios 编程新手。

我希望用户能够滚动屏幕,所以我初始化了 UIScrollView 并将其他视图添加到 UIScrollView 的实例中。

但是,我无法滚动屏幕,也看不到滚动条。

这是我写的代码。这个视图控制器从 UIViewController 扩展而来。

这有什么问题?

请帮我。非常感谢!!

- (void)viewDidLoad
{
    [super viewDidLoad];

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

    UIImage *img = [UIImage imageNamed:@"avatar.png"];
    UIImageView *profileImg = [[UIImageView alloc] initWithImage:img];
    CGPoint newPoint = self.view.center;

    newPoint.y = 300;
    profileImg.center = newPoint;

    [scrollView addSubview:profileImg];


}
4

1 回答 1

1

您需要设置内容大小并启用滚动

[scrollView setFrame:self.view.bounds]; // not needed to be able to scroll
[scrollView setScrollEnabled:YES]; // needed to be able to scroll, defaults to YES
[scrollView setContentSize:CGSizeMake(320, 500)]; // the important part that is needed to be able to scroll

320 和 500 是期望的最大滚动距离,这不是实际的滚动距离,而是将显示的像素的宽度和高度,您可以认为滚动视图是一个窗口,这些值是外面的世界

这就是您的主要错误所在,因此滚动视图的宽度和高度与上下文大小的宽度和高度相同;就像您正在透过 1 英尺乘 1 英尺的窗户看到一个只有 1 英尺乘 1 英尺的房间

UIScrollView 文档

于 2013-09-30T15:00:32.517 回答