diff --git a/core/java/android/widget/GridView.java b/core/java/android/widget/GridView.java index be633be65084c..d8679802a42d4 100644 --- a/core/java/android/widget/GridView.java +++ b/core/java/android/widget/GridView.java @@ -1128,11 +1128,13 @@ public class GridView extends AbsListView { default: if (childCount == 0) { if (!mStackFromBottom) { - setSelectedPositionInt(0); + setSelectedPositionInt(mAdapter == null || isInTouchMode() ? + INVALID_POSITION : 0); sel = fillFromTop(childrenTop); } else { final int last = mItemCount - 1; - setSelectedPositionInt(last); + setSelectedPositionInt(mAdapter == null || isInTouchMode() ? + INVALID_POSITION : last); sel = fillFromBottom(last, childrenBottom); } } else {