如何在Android中将ListView Scroll位置设置为bottom?

Din*_*dha 5 android android-listview

我知道这个问题之前被问了好几次,但我的情况与其他问题有点不同.

我有一个listview,最初我想将滚动位置设置到列表的底部.

我试过两种方法.

第一个

mCommentListView.setSelection(mAdaptor.getCount()-1);
Run Code Online (Sandbox Code Playgroud)

第二个

mCommentListView.post(new Runnable() {
    @Override
    public void run() {
        mCommentListView.setSelection(mAdaptor.getCount()-1);
    }
});
Run Code Online (Sandbox Code Playgroud)

所以我的问题是上面的代码都与模拟器正常工作,但它不适用于真实的设备.

我错过了什么?

RVG*_*RVG 12

试试这个.以下代码对我来说很好.

为load listview提供时间延迟500,然后调用setselection方法.

commentslistview.postDelayed(new Runnable() {
    @Override
    public void run() {
        commentslistview.setSelection(commentsarraylist.size());
    }
}, 500);
Run Code Online (Sandbox Code Playgroud)


Luc*_*Luc 8

你在ListView中设置了这些吗?

android:stackFromBottom="true"
android:transcriptMode="alwaysScroll"
Run Code Online (Sandbox Code Playgroud)