【问题标题】:How to get NestedScrollView state like start scrolling and stop scrolling?如何获得 NestedScrollView 状态,如开始滚动和停止滚动?
【发布时间】:2018-06-26 04:46:09
【问题描述】:

当我使用 CoordinatorLayout 时,我只想嵌套滚动视图状态,或者请给我一个关于如何突然停止滚动的建议..

因为我使用的是scrollTo() 函数,所以在覆盖滚动时它无法正常工作。所以我想停止之前的滚动然后调用scrollTo()函数。

我的代码是:

  scrollView.post(new Runnable() {
        @Override
        public void run() {
            scrollView.scrollTo(0, contentHeadingView.getTop());
        }
    });

停止获取 NestedScrollView 滚动操作的任何想法,并启动 NestedScrollView 滚动操作。这对我来说会更有帮助。

请帮帮我。

希望有人给我一个解决方案。

谢谢。

【问题讨论】:

    标签: android user-interface ui-design


    【解决方案1】:

    要停止滚动,只需使用scrollView.smoothScrollBy(0, 0);

    【讨论】:

    • 谢谢,滚动将停止,但使用scrollTo() 后无法正常工作..
    • 你能说得更具体些吗?并解释“我只想嵌套滚动视图”的意思。
    • 好的,我想在嵌套滚动视图中导航一些特定视图。所以我使用scrollTo()函数,当它正常工作时调用这个函数,在正常滚动后再次调用相同的函数它不能正常工作,这意味着它没有导航到提到的视图。
    • 它做什么而不是滚动到特定视图? contentHeadingView.getTop() 带给你什么?
    • contentHeadingView 不是LinearLayout view。当我单击标题导航按钮调用该函数时。
    【解决方案2】:

    要停止滚动,您需要使用此方法 nestedScrollView.stopNestedScroll(); 然后开始滚动到某个位置使用这个方法 nestedScrollView.scrollTo(0,0); 如果你想在某个时间后开始滚动,你可以使用这个内部处理程序。 希望这行得通!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-27
      • 1970-01-01
      相关资源
      最近更新 更多