Android按钮显示和隐藏相同的弹出窗口

时间:2011-12-14 10:01:39

标签: android android-layout

有人可以告诉我,如何使用一个按钮显示和隐藏相同的弹出窗口。

建议欢迎。


Popup意味着当我点击一个菜单按钮时,它会显示一个包含listview的弹出窗口,当我再次点击菜单按钮并触摸屏幕上的任何地方时,popwindow应该会消失。

1 个答案:

答案 0 :(得分:4)

我使用波纹管代码来做到这一点。在您的情况下,menuButton是您的单个按钮,content是您的列表视图。 anchor可以是menuButton本身,也可以是其他View

public static void setupMenuButton(View menuButton, View content, final View anchor) {
    private PopupWindow popup;

    menuButton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            if (popup == null) {
                popup = new PopupWindow(content, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
                popup.setOutsideTouchable(true);
            }

            if (popup.isShowing()) {
                popup.dismiss();
            }
            else {
                popup.showAsDropDown(anchor);
            }
        }
    });
}