title: Scroll up does not work with SwipeRefreshLayout in Listview
body: <p>I want to implement scroll to refresh functionality with a listView. Also there are other view elements in the same layout file which are displayed if the list is empty. Here is my layout file. The problem is that when I scroll down and then try to scroll up, instead of scrolling all the way to the top and then refreshing it just refreshes there and scroll up is not working.</p>
  
  <pre><code>&lt;android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:tools="http://schemas.android.com/tools"
      android:id="@+id/swipe_container"
      android:layout_width="match_parent"
      android:layout_height="match_parent" &gt;
  
  &lt;LinearLayout
      android:layout_width="match_parent"
      android:layout_height="match_parent" &gt;
  
      &lt;RelativeLayout
          android:layout_width="wrap_content"
          android:layout_height="64dp"
          android:paddingLeft="16dp"
          android:paddingRight="16dp" &gt;
  
          &lt;ImageView
              android:layout_width="40dp"
              android:layout_height="40dp"
              android:layout_alignParentLeft="true"
              android:layout_centerVertical="true"
              android:src="@drawable/inbox_empty" /&gt;
  
          &lt;TextView
              android:id="@+id/noEventsText"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_centerVertical="true"
              android:layout_marginLeft="16dp"
              android:layout_toRightOf="@+id/noEventsIcon" /&gt;
  
          &lt;View
              android:id="@+id/divider"
              android:layout_width="match_parent"
              android:layout_height="1px"
              android:layout_alignParentBottom="true"
              android:layout_marginLeft="4dp"
              android:layout_marginRight="4dp"
              android:background="@color/dividerOnBlack" /&gt;
      &lt;/RelativeLayout&gt;
  
      &lt;ListView
          android:id="@+id/list_items"
          android:layout_width="match_parent"
          android:layout_height="fill_parent"
          android:cacheColorHint="@android:color/transparent"
          android:choiceMode="multipleChoice"
          android:descendantFocusability="afterDescendants"
          android:divider="@android:color/transparent"
          android:dividerHeight="0px"
          android:scrollbars="none" /&gt;
  &lt;/LinearLayout&gt;
  
  &lt;/android.support.v4.widget.SwipeRefreshLayout&gt;
  </code></pre>
  
  <p>This is my onScroll method.</p>
  
  <pre><code>@Override
  public void onScroll(AbsListView view,int firstVisibleItem,int visibleItemCount,int totalItemCount) {
      // If the total item count is zero and the previous isn't, assume the
      // list is invalidated and should be reset back to initial state
      if (totalItemCount &lt; previousTotalItemCount) {
          this.currentPage = this.startingPageIndex;
          this.previousTotalItemCount = totalItemCount;
          if (totalItemCount == 0) { this.loading = true; } 
      }
  
      // If it's still loading, we check to see if the dataset count has
      // changed, if so we conclude it has finished loading and update the current page
      // number and total item count.
      if (loading &amp;&amp; (totalItemCount &gt; previousTotalItemCount)) {
          loading = false;
          previousTotalItemCount = totalItemCount;
          currentPage++;
      }
  
      // If reverse then the firstVisibleItem is calculated wrong
      if (reverse) {
          firstVisibleItem = totalItemCount - firstVisibleItem;
      }
      // If it isn't currently loading, we check to see if we have breached
      // the visibleThreshold and need to reload more data.
      // If we do need to reload some more data, we execute onLoadMore to fetch the data.
      if (!loading &amp;&amp; (totalItemCount - visibleItemCount)&lt;=(firstVisibleItem + visibleThreshold)) {
          onLoadMore(currentPage + 1, totalItemCount);
          loading = true;
      }
  }
  </code></pre>