亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

Android PopupMenu點擊外部是否可以自動關閉

小樊
93
2024-07-12 00:06:38
欄目: 編程語言

在Android中,PopupMenu是一個彈出式菜單,通常顯示在屏幕的某個位置上。默認情況下,PopupMenu是不會在點擊外部區域時自動關閉的,用戶需要手動點擊菜單之外的區域或者按下返回鍵來關閉PopupMenu。

如果想要實現點擊外部區域自動關閉PopupMenu的功能,可以通過以下幾種方法實現:

  1. 使用setOnDismissListener()方法監聽PopupMenu的dismiss事件,然后在dismiss事件中關閉PopupMenu。
PopupMenu popupMenu = new PopupMenu(context, anchorView);
popupMenu.setOnDismissListener(new PopupMenu.OnDismissListener() {
    @Override
    public void onDismiss(PopupMenu menu) {
        // 關閉PopupMenu
        menu.dismiss();
    }
});
  1. 自定義PopupMenu的顯示和隱藏邏輯,可以在PopupWindow中自定義顯示和隱藏菜單,并在顯示的時候設置外部可點擊,點擊外部區域時關閉菜單。
// 創建一個PopupWindow
PopupWindow popupWindow = new PopupWindow(popupView, width, height, true);

// 設置PopupWindow的外部可點擊
popupWindow.setOutsideTouchable(true);

// 設置PopupWindow的背景
popupWindow.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));

// 處理點擊外部區域關閉菜單
popupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
    @Override
    public void onDismiss() {
        // 關閉PopupWindow
        popupWindow.dismiss();
    }
});

// 顯示PopupWindow
popupWindow.showAsDropDown(anchorView);

通過以上方法,可以實現在點擊外部區域時自動關閉PopupMenu的功能。

0
绥中县| 承德县| 兴文县| 荣成市| 富川| 金秀| 磐石市| 门源| 富阳市| 泽普县| 临桂县| 梨树县| 会理县| 甘孜| 莲花县| 琼结县| 连云港市| 常宁市| 平远县| 楚雄市| 疏附县| 乌审旗| 遂昌县| 万荣县| 松溪县| 克什克腾旗| 锦州市| 株洲市| 龙江县| 托克托县| 吉隆县| 蚌埠市| 三江| 甘德县| 南康市| 绿春县| 定州市| 华容县| 靖远县| 新乡市| 扶绥县|