I used listview inside scrollview and used this code to update listview height:
// method to expand the height of listview
public void updateListViewHeight(ListView list) {
    CustomeAdapter myListAdapter = (CustomeAdapter) list.getAdapter();
    if (myListAdapter == null) {
        return;
    }
    // get listview height
    int totalHeight = 0;
    // int adapterCount = myListAdapter.getCount();
    for (int size = 0; size < Math.max(shoutsList.size(), postsList.size()); size++) {
        View listItem = myListAdapter.getView(size, null, list);
        listItem.measure(0, 0);
        totalHeight += listItem.getMeasuredHeight();
    }
    // Change Height of ListView
    ViewGroup.LayoutParams params = list.getLayoutParams();
    params.height = totalHeight
            + (list.getDividerHeight() * (shoutsList.size() - 1));
    list.setLayoutParams(params);
}
The problem is that I request new data from server when the user scroll down, but when I update listview height it auto scroll and request data automatically
