2012-01-11 35 views
7

Tôi hiện đang thiết kế các cửa sổ bật lên mẹo đơn giản bằng cách sử dụng lớp PopupWindow. Tôi có thể loại bỏ cửa sổ bật lên khi được nhấp bên ngoài nội dung. Tuy nhiên, các sự kiện cảm ứng bên ngoài được tiêu thụ bởi bố cục gạch dưới. Làm thế nào tôi có thể tiêu thụ các chạm bên ngoài để khi nhấp vào bên ngoài tôi vẫn có cửa sổ bật lên nhưng không có sự kiện chạm được gửi đến bố cục bên dưới PopupWindow của tôi?Làm thế nào để tiêu thụ và loại bỏ PopupWindow khi nhấp vào bên ngoài?

bộ thuộc tính hiện tại:

mPopupWindow.setBackgroundDrawable(context.getResources().getDrawable(R.drawable.popup_bg)); 
mPopupWindow.setOutsideTouchable(true); 

Trả lời

10

Hóa ra có một cách để làm điều đó! Sau khi nhìn sâu vào PopupWindow và ListPopupWindow tôi phát hiện ra tùy chọn setFocusable (true); sẽ thực hiện chính xác những gì tôi cần!

+0

Phải đợi 2 ngày cho đến khi tôi có thể: ( – Jona

+0

Cảm ơn rất nhiều, dễ dàng hơn nhiều so với tôi nghĩ - nó hoạt động :) – Mark

4

Nếu bạn đang sử dụng ListPopupWindow thì setModal(true) sẽ thực hiện thủ thuật.

+0

Đây phải là câu trả lời được chấp nhận – marmor

Các vấn đề liên quan