ListView直接转到最后一项

时间:2016-11-16 12:14:30

标签: android listview

ListView在添加来自Web服务的新列表后直接转到最后一项。它没有保持其地位。一切都很好,但我的清单带我到最后一项。     通过使用setSelectionsmoothScrollToPositionFromTop,我实现了这一点,但它显示了滚动动画。我不希望这种情况发生。我到目前为止尝试了下面的代码:

注意:我的列表视图仅包含textview。

  listview.setSelection(position);

listview.smoothScrollToPositionFromTop(mylastPosition,0,0);

这个

如果以编程方式添加列表(硬核)而不是从webservice获取列表,则下面的代码可以正常工作。

lv.setOnScrollListener(new AbsListView.OnScrollListener() {
        @Override
        public void onScrollStateChanged(AbsListView view, int scrollState) {

        }

        @Override
        public void onScroll(AbsListView view, int firstVisibleItem, int firstVisibleItem, int totalItemCount) {

            if(firstVisibleItem+firstVisibleItem>= totalCount)
            {
               //code for getting new list 
               loadNewDataFromWS();
           }
    });
是不是因为我在另一个线程而不是主线程中添加列表?

1 个答案:

答案 0 :(得分:1)

我在listview上观看视频时找到了解决方案。 解决方案是将listview的transcriptMode属性设置为disabled

android:transcriptMode = "disabled" - does not scroll
android:transcriptMode = "normal" - scrolls to the bottom if last item is visible
android:transcriptMode = "disabled" - always scrolls to the bottom