Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何使UITableView可滚动_Ios_Xcode_Uitableview - Fatal编程技术网

Ios 如何使UITableView可滚动

Ios 如何使UITableView可滚动,ios,xcode,uitableview,Ios,Xcode,Uitableview,当我想要滚动UITableView时,它会恢复到初始状态。 我录制了一段视频 我不知道我能在代码的哪一部分修复它,所以如果你知道,告诉我,我会写我的代码 我的代码在这里: 我必须修复什么?UITableView会向后滚动,因为它的内容大小等于它的帧(或接近帧)。如果您想滚动它而不返回,则需要添加更多单元格:表视图内容大小将比其框架大。另一种情况:手动更改表视图内容大小,如果为真,则通常情况下不应这样做。不建议手动更改UITableView的内容大小,内容大小将根据总行数和每行高度自动调整 因此,

当我想要滚动UITableView时,它会恢复到初始状态。
我录制了一段视频
我不知道我能在代码的哪一部分修复它,所以如果你知道,告诉我,我会写我的代码

我的代码在这里:

我必须修复什么?

UITableView会向后滚动,因为它的内容大小等于它的帧(或接近帧)。如果您想滚动它而不返回,则需要添加更多单元格:表视图内容大小将比其框架大。另一种情况:手动更改表视图内容大小,如果为真,则通常情况下不应这样做。

不建议手动更改UITableView的内容大小,内容大小将根据总行数和每行高度自动调整

因此,首先需要从代码中删除内容大小设置

那么

  • 确认,没有任何其他视图与tableview重叠
  • 确认,您正在单元格动态高度更改后调用“重新加载数据”
  • 尝试降低tableview高度,查看是否能够滚动和定位所有单元格
  • 所有滚动视图都有一个默认的反弹属性,您可以从属性视图中将其关闭

  • 您设置了scrollview的contentsize吗?我在代码中有这个方法:-(void)observeValueForKeyPath:(NSString*)对象的关键路径:(id)对象更改:(NSDictionary*)更改上下文:(void*)上下文{cgrit frame=self.tableView.frame;frame.size=self.tableView.contentsize;self.tableView.frame=frame;}为什么要将表视图框架设置为其内容大小?请看下面的回答,我已经描述了您的问题。我试图删除contentSize设置并降低tableview高度。现在它会滚动,但tableview高度小于内容大小:(现在tableview高度实际上是我在xib文件中设置的方式“但tableview高度小于内容大小:(”,是的,这是正确的。如果表视图高度小于内容大小,则只有我们可以滚动。如果两者相同,滚动的要求是什么?英语不是我的母语,因此可能我无法描述我的问题。首先,如果内容大小大于表视图高度,我们必须滚动。其次,如果内容大小小于表view高度,表视图高度必须降低,所以内容大小和表大小高度必须相等。我不知道怎么做。