0

我做了一个ViewFlipper在我从网络上解析的新闻文章之间导航。

一切正常,但是当我在当前项目中向下滚动然后导航到下一个/上一个项目时,ScrollView不会滚动到新文章项目的顶部。它只是“挂”在我读完最后一篇文章的地方。

在我的onClick(View v)方法结束时,我有thisScrollView.scrollTo(0, 0);

有趣的是,这适用于模拟器和索尼爱立信 Xperia,但不适用于 HTC Desire 和 Galaxy Tab。它不应该与设备上的 Android 版本相关,因为该方法从 API 级别 1 开始可用。

有人有什么想法吗?

4

3 回答 3

1

我还尝试scrollTo(0,0)了一个包含 ViewFlipper 作为孩子的 ScrollView。结果不是那么准确。

然后我尝试smoothScrollTo(0, 0); 如下

 _viewFlipperParentScrollView.fullScroll(View.FOCUS_UP);
 _viewFlipperParentScrollView.pageScroll(View.FOCUS_UP);
 _viewFlipperParentScrollView.smoothScrollTo(0, 0);

结果并不完全令人满意,但比

_viewFlipperParentScrollView.scrollTo(0, 0);
于 2011-07-28T19:28:05.923 回答
0

为此,我通常使用setSelectionAfterHeaderView ,它适用于 HTC 设备。

于 2011-04-11T12:38:50.117 回答
0

我遇到了同样的问题,我将对 scoll 的调用放在一个可运行的文件中,并在 UI 消息队列可用时发布它。我不知道它为什么起作用。

getView().post(new Runnable() {
            @Override
            public void run() {
                myscrollView.fullScroll(ScrollView.FOCUS_UP);
                myscrollView.smoothScrollTo(0,0);

            }
        });

我不知道为什么我需要这两个电话,因为它们做同样的事情。但这对我有用,但只做其中一个没有。

于 2018-03-10T11:50:04.883 回答