OSDN Git Service

Remove scroll view from correct parent in AlertController
authorAlan Viverette <alanv@google.com>
Thu, 30 Oct 2014 20:51:21 +0000 (13:51 -0700)
committerAlan Viverette <alanv@google.com>
Thu, 30 Oct 2014 20:51:21 +0000 (13:51 -0700)
BUG: 18191700
Change-Id: I37602fc26d103b76021f00c58f03bc32d7a978fe

core/java/com/android/internal/app/AlertController.java

index 3630cc7..35e03c3 100644 (file)
@@ -37,6 +37,7 @@ import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.view.ViewGroup.LayoutParams;
+import android.view.ViewParent;
 import android.view.ViewTreeObserver;
 import android.view.Window;
 import android.view.WindowInsets;
@@ -589,9 +590,10 @@ public class AlertController {
             mScrollView.removeView(mMessageView);
 
             if (mListView != null) {
-                final int childIndex = mScrollView.indexOfChild(mScrollView);
-                contentPanel.removeViewAt(childIndex);
-                contentPanel.addView(mListView, childIndex,
+                final ViewGroup scrollParent = (ViewGroup) mScrollView.getParent();
+                final int childIndex = scrollParent.indexOfChild(mScrollView);
+                scrollParent.removeViewAt(childIndex);
+                scrollParent.addView(mListView, childIndex,
                         new LayoutParams(MATCH_PARENT, MATCH_PARENT));
             } else {
                 contentPanel.setVisibility(View.GONE);