如何实现下图中提供的类似 facebook 的弹出窗口?尝试使用警报对话框

How to achieve a popup like facebook provided in below image? Tried with aleart dialog

我想弹出这样的 facebook

大家好, 在上面的图像中,您可以看到一个弹出窗口出现在一个按钮上。我尝试使用 AleartDialog 实现此目的,但它在中心打开。我只想要它在那个按钮下面。

LayoutInflater inflater = (LayoutInflater) 
context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View view = inflater.inflate(R.layout.layout_show_options, null);
 new AlertDialog.Builder(this)
            .setView(view)
            .create().show();

如有任何帮助,我们将不胜感激。谢谢

使用弹出菜单 单击按钮打开菜单 menu.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/mail"
        android:icon="@drawable/ic_mail"
        android:title="@string/mail" />
    <item android:id="@+id/upload"
        android:icon="@drawable/ic_upload"
        android:title="@string/upload"
        android:showAsAction="ifRoom" />
    <item android:id="@+id/share"
        android:icon="@drawable/ic_share"
        android:title="@string/share" />
</menu>

Java代码:

 public void showMenu(View v) {
        PopupMenu popup = new PopupMenu(this, v);
        popup.setOnMenuItemClickListener(this);
        popup.inflate(R.menu.actions);
        popup.show();
    }

@Override
public boolean onMenuItemClick(MenuItem item) {
    switch (item.getItemId()) {
        case R.id.archive:
            archive(item);
            return true;
        case R.id.delete:
            delete(item);
            return true;
        default:
            return false;
    }
}

使用弹出菜单

    <?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/unfriend"
        android:icon="@drawable/ic_mail"
        android:title="Unfriend" />
    <item android:id="@+id/edit_friend_list"
        android:icon="@drawable/ic_upload"
        android:title="Edit FriendList"
        android:showAsAction="ifRoom" />

</menu>


public void showPopup(View v) {
PopupMenu popup = new PopupMenu(this, v);
MenuInflater inflater = popup.getMenuInflater();
inflater.inflate(R.menu.menu_example, popup.getMenu());
popup.show();

}

@Override
public boolean onMenuItemClick(MenuItem item) {
    switch (item.getItemId()) {
        case R.id.unfriend:
            // 
            return true;
        case R.id.edit_friend_list:

            return true;
        default:
            return false;
    }
}

希望对您有所帮助。

更多详情请访问下方link。

https://www.tutlane.com/tutorial/android/android-popup-menu-with-examples

https://www.javatpoint.com/android-popup-menu-example

http://www.coderzheaven.com/2013/04/07/create-simple-popup-menu-android/