diff --git a/api/test-current.txt b/api/test-current.txt index 22c5581732f61..fbb36fcd6cce0 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -48793,6 +48793,7 @@ package android.widget { method public int getGravity(); method public android.view.Menu getMenu(); method public android.view.MenuInflater getMenuInflater(); + method public android.widget.ListView getMenuListView(); method public void inflate(int); method public void setGravity(int); method public void setOnDismissListener(android.widget.PopupMenu.OnDismissListener); diff --git a/core/java/android/widget/PopupMenu.java b/core/java/android/widget/PopupMenu.java index eb27533c50caf..59bbc3b8056e3 100644 --- a/core/java/android/widget/PopupMenu.java +++ b/core/java/android/widget/PopupMenu.java @@ -17,6 +17,7 @@ package android.widget; import android.annotation.MenuRes; +import android.annotation.TestApi; import android.content.Context; import android.view.Gravity; import android.view.Menu; @@ -281,4 +282,19 @@ public class PopupMenu { */ void onDismiss(PopupMenu menu); } + + /** + * Returns the {@link ListView} representing the list of menu items in the currently showing + * menu. + * + * @return The view representing the list of menu items. + * @hide + */ + @TestApi + public ListView getMenuListView() { + if (!mPopup.isShowing()) { + return null; + } + return mPopup.getPopup().getListView(); + } }