我正在使用以下代码创建滚动视图。但是它水平显示。 任何人都可以告诉我如何将此滚动视图更改为垂直方式。
scrollView1 = [[UIScrollView alloc] initWithFrame:CGRectMake(25,50,700,175)];
[self.view addSubview:scrollView1];
[scrollView1 setBackgroundColor:[UIColor lightGrayColor]];
[scrollView1 setCanCancelContentTouches:NO];
scrollView1.indicatorStyle = UIScrollViewIndicatorStyleWhite;
scrollView1.clipsToBounds = YES; // default is NO, we want to restrict drawing within our scrollview
scrollView1.scrollEnabled = YES;
scrollView1.pagingEnabled=YES;
答案 0 :(得分:2)
UIScrollView
的滚动基于contentSize属性,即CGSize值。
每当width
或height
大于滚动视图框架时,滚动视图将允许滚动(如果属性showsVerticalScrollIndicator
,showsHorizontalScrollIndicator
和{{1都被设置为YES - 这是默认值)
因此,您可以尝试做的一件事是将scrollEnabled
的高度设置为大于已设置为框架的高度,例如:
contentSize
答案 1 :(得分:0)
由于您的代码适用于水平滚动,您只需要设置initWithFrame
。下面的代码将为您提供全部帮助,其余代码将相同的垂直滚动将启动
scrollView1 = [[UIScrollView alloc] initWithFrame:CGRectMake(25,50,175,700)];
答案 2 :(得分:0)
同时检查你的autoRotate函数是否返回了正确的布局。如果您没有告诉您的应用程序它可以将视图旋转为纵向,那么它将保持水平配置,您已经硬编码。
答案 3 :(得分:0)
滚动任何滚动视图完全取决于contentSize属性。 在您的代码中,您没有提到scrollView1的内容大小。
所以,你应该添加它,
scrollView1.contentSize = CGSizeMake(700, 1750);
这里我们提供了两个参数,一个是宽度,另一个是高度。这样可以进行10次垂直滚动,因为您的帧高为175像素,而contentSize高度为1750像素。
注意:您的contentSize值(即宽度和高度)必须大于帧大小才能滚动。
谢谢...