Android Smoothscrolltoposition已停止

Android Smoothscrolltoposition已停止,android,android-listview,android-scroll,Android,Android Listview,Android Scroll,我正在寻找一个方法,当程序化滚动(使用smoothscrolltoposition)到达给定位置时触发该方法。 我有一个带有列表视图的活动。当用户点击按钮时,列表滚动到给定位置。我需要更改该位置的项目布局属性。 我正在使用一个滚动监听器,并重写onScroll方法来实现这一点,但该方法并没有像文档中所说的那样在最后执行。 顺便说一句:我使用的是API 8 这是我的代码: public void scrollToPosition(View view) { this.myList.setOn


我正在寻找一个方法,当程序化滚动(使用smoothscrolltoposition)到达给定位置时触发该方法。
我有一个带有列表视图的活动。当用户点击按钮时,列表滚动到给定位置。我需要更改该位置的项目布局属性。 我正在使用一个滚动监听器,并重写onScroll方法来实现这一点,但该方法并没有像文档中所说的那样在最后执行。
顺便说一句:我使用的是API 8

这是我的代码:

public void scrollToPosition(View view) {
    this.myList.setOnScrollListener(new OnScrollListener() {
        @Override
        public void onScrollStateChanged(AbsListView view, int scrollState) {
        }

        @Override
        public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
            // Here I need to be positioned in the right place, to change the row layout.
            MyActivity.this.myList.setOnScrollListener(null);
        }
    });
    this.myList.smoothScrollToPosition(this.position - 1);
}
TIA,
Milton.

平滑滚动定位的问题是,它滚动屏幕上可见的给定位置,而不是屏幕顶部。您需要确定是向下滚动到您的位置还是向上滚动到您的位置。这是第一点,第二点为什么要在滚动侦听器开始滚动时删除它?在listview刚刚开始滚动时调用“onScroll”。您需要检查onScrollStateChanged,它有3种状态,touchScroll->user正在触摸listview并滚动,flingScroll->listview正在滚动,但user没有触摸,scrollIdle->user没有触摸任何东西,滚动视图仍然显示


您的问题没有明确说明您需要做什么,请编辑它,我将帮助您

Wow。。。看起来没有人知道该怎么做:(尝试不成功的评论也会很有帮助!