如何在iOS中创建可滚动视图?

3
我想为我的应用程序创建一个“选项”页面,但是由于选项较多,手机屏幕不足以显示。因此,我需要用户能够向下滚动视图以查看更多选项,直到最后一个。我知道我应该使用ScrollView,但是我不知道如何使用。
我找到的所有教程都是有关全屏滚动、缩放、从左到右滚动等方面的,但没有关于如何创建简单的上下滚动页面的内容。
我应该怎么做呢?我需要制作很多.nib文件并将它们连接起来吗?还是要制作一个大的.nib文件?
有人能引导我参考一份教程吗?

2
可能只需要将UIScrollView子类化而不是UIView - trojanfoe
很抱歉,我是iOS的新手,对于你所说的内容几乎一无所知。 - user1498477
使用UITableview分组模式来显示选项。这样会更好。 - Anil Varghese
Anil,如果我这样做,整个屏幕都会是一个表格视图吗?因为我也想在那里放置一个地图。 - user1498477
你可以把地图放在表视图的其中一个分区头中吗? - trojanfoe
显示剩余2条评论
5个回答

4
使用UIScrollViewContentSize属性来滚动任何想要的区域,例如:将UIScrollView添加到UIView上,并设置其高度为iPhone的最大值460.0像素,因此ScrollView的框架将是(0,0,320.0,460.0)。
现在,在将ScrollView添加到View后,将ContentSize属性设置为可滚动区域的大小。
[self.mainScrollView setContentSize:CGSizeMake(self.mainScrollView.frame.size.width, 1000.0)];

1
我不怀疑你所说的,但我不明白我应该做什么。你能发一个简单的工作示例或教程吗? - user1498477
明确提供了满足您需求的代码行。在添加ScrollView后,只需按照我提供的代码行进行编写,并设定您希望看到的完整视图的高度即可。 - Madhu
1
我应该把这行代码放在哪里?在哪个方法中?viewDidLoad中吗? - user1498477
嘿,在添加了ScrollView之后,无论你在哪里创建它,请添加这行代码。如果它是从NIb中获取的,请在ViewDidLoad方法中写入IBOutlet。 - Madhu

2
UIScrollView *mainScroll = [[[UIScrollView alloc]initWithFrame:CGRectMake(x,y,w,h)]autorelease];//scrollview width and height

mainScroll.scrollEnabled = YES;   
mainScroll.userInteractionEnabled = YES;

mainScroll.showsVerticalScrollIndicator = YES;

mainScroll.contentSize = CGSizeMake(width,height);//width and height depends your scroll area

..........

//add  subviews to your scrollview.....
[mainScroll addSubview:view1]

............

[mainScroll addSubview:view2]

..............

[mainScroll addSubview:view3]

[self.view addSubview:mainScroll];

注意:contentSize 属性决定了你的滚动区域。只有当滚动视图内容大于滚动视图高度时才启用滚动。

谢谢,它运行得很好 :)。现在添加子视图意味着我需要通过代码创建所有元素吗?例如,如果我想放置一个按钮或文本,我必须编写代码,还是可以使用构建器?如果我可以使用构建器,那么如何将某些东西放置在滚动区域中的某个位置?我的意思是在第一屏幕上看不到它,但您必须向下滚动才能看到它。 - user1498477
@d0nparalias,根据我的回答,在代码中添加子视图。否则,您首先需要向生成器添加滚动视图,然后再向其添加子视图。 - IKKA

1
您可以使用静态单元格的表视图,它会自动滚动,如果需要的话,这样更容易。另外,使用表视图,您可以从属性检查器中选择向上、向下、向左、向右滚动,设置弹跳等。

0

只制作一个nib文件。 将滚动视图的高度设置为所需大小。 然后将按钮和文本框放置在滚动视图上。


崩溃问题并不简单。我相信您需要在控制器上放置一些代码。 - user1498477

0

有两种方法:

  • 为您的应用程序创建设置捆绑包,请查看点击这里

  • 使用自定义单元格制作UITableView>>如果您使用Interface Builder,则很容易点击这里


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接