2015-06-04 6 views
1

Как показать всплывающее меню всегда в нижней части анкера. Это код, который я использую для отображения всплывающего меню.Всплывающее меню в нижней части окна

PopupMenu popup = new PopupMenu(activityReference, view, Gravity.NO_GRAVITY); 
       popup.getMenuInflater() 
        .inflate(R.menu.popup_menu_event_edit, popup.getMenu()); 
popup.show(); 

Я попытался сменить Gravity.NO_GRAVITY на Gravity.BOTTOM. Но это не работает.

ответ

-1

Используйте это для меня.

popupMenu = new PopupMenu(MainActivity.this, anchorView); 
popupMenu.inflate(R.menu.popup_menu); 
      popupMenu.show(); 
+0

Мой вид якорь находится в центре экрана. Итак, что происходит, всплывающее окно отображается в верхней части анкерного представления, даже если у него достаточно места в нижней части представления –

0

Он работал для меня

PopupMenu attachFilePopup = new PopupMenu(this, view ,Gravity.BOTTOM); 
attachFilePopup.inflate(R.menu.attachment_choices); 

зрения => нижнюю кнопку, где вы хотите, чтобы отобразить меню

attachment_choices.xml

<item 
    android:id="@+id/attach_location" 
    android:title="@string/send_location"/> 

<item 
    android:id="@+id/attach_record_voice" 
    android:title="@string/attach_record_voice"/> 

<item 
    android:id="@+id/attach_take_picture" 
    android:title="@string/attach_take_picture"/> 

<item 
    android:id="@+id/attach_choose_picture" 
    android:title="@string/attach_choose_picture"/> 

<item 
    android:id="@+id/attach_choose_file" 
    android:title="@string/choose_file"/> 

0

здесь button1 вид якоря означает referrence, где вы хотите, чтобы показать меню

PopupMenu popupMenu = new PopupMenu(context, button1, Gravity.TOP); 
popupMenu.getMenuInflater().inflate(R.menu.home_drawer_bottom_nav_menu, popupMenu.getMenu()); 
popupMenu.show(); 
Смежные вопросы