fhucho fhucho - 1 year ago 88
Android Question

Find out if ListView is scrolled to the bottom?

Can I find out if my ListView is scrolled to the bottom? By that I mean that the last item is fully visible.

Answer Source


Since I have been investigating in this particular subject in one of my applications, I can write an extended answer for future readers of this question.

Implement an OnScrollListener, set your ListView's onScrollListener and then you should be able to handle things correctly.

For example:

private int preLast;
// Initialization stuff.

// ... ... ...

public void onScroll(AbsListView lw, final int firstVisibleItem,
                 final int visibleItemCount, final int totalItemCount) {

    switch(lw.getId()) {
        case android.R.id.list:     

            // Make your calculation stuff here. You have all your
            // needed info from the parameters of this function.

            // Sample calculation to determine if the last 
            // item is fully visible.
             final int lastItem = firstVisibleItem + visibleItemCount;
           if(lastItem == totalItemCount) {
              if(preLast!=lastItem){ //to avoid multiple calls for last item
                Log.d("Last", "Last");
                preLast = lastItem;