【问题标题】:Tapping status bar doesn't scroll table view to top点击状态栏不会将表格视图滚动到顶部
【发布时间】:2014-08-26 02:01:18
【问题描述】:

好的,我已经阅读了几乎所有关于这个问题的帖子,他们都说同样的话:

在整个视图层次结构中,只有一个滚动视图(或子类)应将scrollsToTop 设置为YES,其余应设置为NO。当我的视图加载时,我递归地迭代整个视图层次结构,就像许多答案所建议的那样,将scrollsToTop 设置为NO,然后我只将我的表视图的scrollsToTop 设置为YES,但它仍然不会滚动当我点击状态栏时。我已经覆盖了:

-(BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView{
    return YES;
}

但即使我的视图控制器是我的表格视图的滚动视图委托,它也没有被调用。

我确实有带有文本视图的单元格,当容器单元格从 nib 唤醒时,我也立即将它们的 scrollsToTop 属性设置为 NO,并且没有其他来自滚动视图的视图。

为什么它不起作用?

【问题讨论】:

    标签: ios uitableview uiscrollview scroll


    【解决方案1】:

    不管怎样,我从来没有在我用过的任何表格视图控制器上设置 scrollsToTop,而且它们都默认这样做。也许所有这些递归视图层次结构的东西实际上是导致问题的原因。我只是查看了我编写的所有应用程序,所有应用程序都可以正常工作,而无需触摸 scrollsToTop,其中许多都嵌入了 scrollViews/textViews/etc。也许尝试注释掉所有 scrollsToTop 代码并尝试它?

    否则,您将如何构建此 tableview?是带笔尖的还是普通的 UITableViewController?

    【讨论】:

    • 最初根本没有scrollsToTop 代码。但它不起作用,这就是我尝试设置scrollsToTop 的原因。表格视图位于常规 uiviewcontroller 内。
    • 或许您可以尝试使用普通的 UITableViewController?
    • 我不能。我在视图控制器中有很多自定义控件。
    • 啊.. 我想一个潜在的黑客是在状态栏的顶部放置一个点击手势识别器?
    • 是的,这可以作为最后的手段。但这太 hacky,我更喜欢更“认可”的方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-13
    • 1970-01-01
    • 1970-01-01
    • 2012-05-29
    • 2012-02-15
    • 1970-01-01
    相关资源
    最近更新 更多