我对scrollview有一个奇怪的问题 - 我尝试在xib文件中以编程方式执行此操作。基本上我有3个文本字段,我希望能够滚动到我的滚动视图填充整个屏幕。
为此,我首先在我的xib上创建了一个scrollview并对其进行约束,使其始终填满屏幕。然后我将内容大小扩展到视图大小的3倍,因此它应该能够滚动
scrollView.delegate = self
scrollView.frame = CGRectMake(0, 0, screenSize.width, screenSize.height)
scrollView.backgroundColor = UIColor.redColor()
self.scrollView.contentSize = CGSizeMake(self.view.frame.width*3, screenSize.height * (50/568))
scrollView.center = CGPointMake(self.view.frame.width * -1.5, self.view.frame.height * 0.5)
scrollView.addSubview(containerView)
view.addSubview(scrollView)
self.scrollView.delaysContentTouches = false
我有3个名为search 1,2,3的文本字段,然后我在这个滚动视图中这样定位,所以它们在屏幕上的长度不同于左边 -
search3.center = CGPointMake(screenSize.width * 0.5, screenSize.height * 0.45)
search2.center = CGPointMake(screenSize.width * -0.5, screenSize.height * 0.45)
search1.center = CGPointMake(screenSize.width * -1.5, screenSize.height * 0.45)
这已经奏效,这意味着我有第一个搜索字段左侧2个视图,另一个右侧旁边等等
问题是我只能滚动到右边,因为我似乎无法将我的滚动视图的中心从左侧移开,因此它的长度向右扩展了3个视图。我试过这个 -
scrollView.center = CGPointMake(self.view.frame.width * -1.5, self.view.frame.height * 0.5)
以编程方式创建视图的各种其他方法,但它不起作用。这就是我需要滚动到右边所需的所有东西 -
我从来没有过这个。如何将视图宽度向左扩展?
答案 0 :(得分:0)
您是否尝试过设置scrollView的contentOffset?根据文档,contentOffset代表:
内容视图的原点偏离滚动视图的原点的位置。
如果你想让你的滚动视图从中间开始(可以向左和向右滚动),这可能对你有用,假设contentView是scrollView大小的3倍
self.scrollView.contentOffset = CGPointMake(self.scrollView.contentSize.width/3 , 0.0f);