无论UITableView
的内容大小如何,它都可以随时滚动。但现在我想UIScrollView
也喜欢它.......
首先,我使用这样的代码:
self.scrollView.contentSize = CGSizeMake(0, self.view.frame.size.height - 63);
它确实有效,但现在我使用AutoLayout,它说我必须确定内容大小。
应用程序必须适应iPhone4~iPhone 6 Plus,因此内容大小无法确定,它总是小于屏幕减去1,就像这样(因为状态栏和导航栏接管64像素)
self.scrollView.contentSize = CGSizeMake(0, self.view.frame.size.height - 63);
顺便说一句,如果我不确定大小,并在- (void)viewDidLoad
中编写此代码,而Xcode只是加热编译它,不会影响APP的运行。
我希望你能给我一些更好的方法。
答案 0 :(得分:2)
我已经解决了这个问题,只需添加这个scrollView.alwaysBounceVertical = YES
,然后我可以滚动ScrollView,无论框架内的内容是否
答案 1 :(得分:0)
首先,我几乎不明白你想要什么。
现在技术部分:
这不是一个好习惯,地狱,你永远不应该改变UITableView
的内容大小,UITableView
总是根据heightFirRowAtIndexPath
计算他的内容大小,heightForHeader...
以及其他heightFor...
方法,这就是表格滚动的原因(当然,如果方法正确实施的话)
UIScrollview
不会自行计算内容大小,因为它不是那样设计的,因此您必须为其指定内容大小。通常当UIScrollView
没有滚动它时,因为它contentSize
小于滚动的帧大小所以它不需要滚动。
使用自动布局实现UIScrollView
它有点棘手,你必须做一些调整,但Apple提供了一些例子here你应该怎么做。另外一点谷歌搜索将找到大量关于如何做的例子。