Ios 斯威夫特:在tableView中滚动时,如何停止滚动,然后在最后一个tableView项之后继续滚动?
我有一个高度为1000的Ios 斯威夫特:在tableView中滚动时,如何停止滚动,然后在最后一个tableView项之后继续滚动?,ios,swift,uiscrollview,tableview,scrollview,Ios,Swift,Uiscrollview,Tableview,Scrollview,我有一个高度为1000的ViewController,我放了几个插座来测试滚动功能。我想做的是,当你进入tableView时,滚动到tableView列表的底部,然后继续滚动到底部。在我的代码中,它会上升,但我无法离开tableView 我的故事书与插座: 这是我的密码: func scrollViewDidScroll(_ scrollView: UIScrollView) { let yOffset = scrollView.contentOffset.y l
ViewController
,我放了几个插座来测试滚动功能。我想做的是,当你进入tableView
时,滚动到tableView
列表的底部,然后继续滚动到底部。在我的代码中,它会上升,但我无法离开tableView
我的故事书与插座:
这是我的密码:
func scrollViewDidScroll(_ scrollView: UIScrollView) {
let yOffset = scrollView.contentOffset.y
let svHeight = scrollView.bounds.height
let screenHeight = CGFloat(1000)
if scrollView == self.scrollView {
if yOffset >= svHeight - screenHeight {
scrollView.isScrollEnabled = false
myTV.isScrollEnabled = true
}
}
if scrollView == self.myTV {
if yOffset <= 0 {
self.scrollView.isScrollEnabled = true
self.myTV.isScrollEnabled = false
}
}
}
func scrollViewDidScroll(scrollView:UIScrollView){
设yOffset=scrollView.contentOffset.y
设svHeight=scrollView.bounds.height
让屏幕高度=CGFloat(1000)
如果scrollView==self.scrollView{
如果yOffset>=svHeight-屏幕高度{
scrollView.IsCrollenabled=false
myTV.IsCrollenabled=true
}
}
如果scrollView==self.myTV{
如果yOffset我想我了解您想要做什么。您希望滚动到表视图内容的底部,然后能够继续滚动以在滚动视图中显示下面的更多内容。是否正确
最简单的方法是删除滚动视图,并将所有内容放入表视图中。您必须为其他内容(例如文本视图)制作更多的原型单元格。这样做意味着您只需管理表视图滚动,这比尝试将表视图添加到表视图中要容易得多在滚动视图中滚动。如您的故事板和礼物中的文档大纲部分所示(),您做错了。即使在图像上向上滑动时,您的滚动视图也不工作。为了使滚动视图完全工作,您需要调整滚动视图中的内容视图,然后将其他元素(如UIImageView和UITableView)作为子视图放在其中。
您可能希望按照本教程进行操作:
此外,当您完成滚动到滚动视图中的表格视图底部时,您的下一个向上滑动手势将自动涉及滚动视图。因此,无需担心如何处理这些概念。您可以用一些gif图像来描述您的问题。我不明白。嗨。这是gif:如您所见,我正在尝试滚动到底部,但我不能,因为我的代码工作不正常。我看到你确实滚动到底部(单元格99)。我不明白。整个视图的高度是1000。我想在tableView之后继续滚动整个视图。是的,我知道用MVVM可以做到这一点。我只是想为自己做一些挑战。我真的想解决这个问题并解决它。这不是一个很大的挑战,因为它对您的视图层次结构来说是一个糟糕的设计。您现有的布局ut永远不会按照你想要的方式工作。我建议你按照我建议的方式重新设计你的观点。这意味着无用并不意味着我们不能尝试一些东西并从中学习。只是想以这种方式看到结果。如此简单。