2013-09-03 39 views
5

Tôi đang tìm cách phát hiện khi một điểm đánh dấu trên bản đồ Google bị bỏ chọn. Tôi có một ngăn kéo trượt, nơi tay cầm là vô hình cho đến khi người dùng nhấp vào điểm đánh dấu, và tôi muốn làm cho nó vô hình một lần nữa khi đánh dấu là "bỏ chọn". Tôi đã thử với marker.isInfoWindowShown() nhưng tôi không thể làm cho nó hoạt động.Phát hiện nếu người dùng "bỏ chọn" điểm đánh dấu trên bản đồ google

+0

'Deselected' có nghĩa là gì? Làm thế nào để bạn làm điều đó? – Praveen

+0

Khi người dùng nhấp vào bản đồ và ẩn thông tin mà tôi hiển thị khi điểm đánh dấu được nhấp vào. –

Trả lời

10

Không có sự kiện cho cửa sổ thông tin biến mất, nhưng bạn có thể làm việc xung quanh nó bằng

map.setOnMapClickListener(new OnMapClickListener() { ... }); 

và một vài "sự kiện" khác mà làm cho cửa sổ thông tin biến mất. Nếu bạn sử dụng marker.remove() hoặc marker.setVisible(false), chúng cũng làm cho cửa sổ thông tin biến mất khi được gọi trên một điểm đánh dấu hiển thị cửa sổ thông tin.

Bạn sẽ phải lưu tham chiếu markerShowingInfoWindow (có thể là từ OnMarkerClickListener hoặc InfoWindowAdapter).

+0

tôi nghĩ anh ta chỉ muốn InfoWindow biến mất. không phải toàn bộ điểm đánh dấu. – bofredo

+1

@ bofredo Tôi nghĩ anh ấy muốn biết khi nào cửa sổ thông tin biến mất. Làm cho nó biến mất rất đơn giản: 'marker.hideInfoWindow()'. –

+0

@ MaciejGórski Cảm ơn, đây là những gì tôi muốn. Tôi không biết tại sao tôi không nghĩ về nó bản thân mình, tôi đoán đôi khi bộ não của bạn nghỉ ngơi :) –

0

Tôi biết bạn đã chọn câu trả lời nhưng câu trả lời được chọn cũng không làm những gì bạn cần.

Tôi cũng đang bận với một ứng dụng sử dụng các điểm đánh dấu và có chế độ xem được chuyển khi người dùng chọn và bỏ chọn một điểm đánh dấu.

Đây chỉ là một công việc đơn giản xung quanh.

Điều này đang sử dụng hai người nghe nhấp chuột, Bằng cách này bạn sẽ có thể chuyển đổi chế độ hiển thị tùy thuộc vào những gì người dùng nhấp.

0

Điều này chỉ hữu ích khi điểm đánh dấu có Cửa sổ thông tin. Khi Cửa sổ thông tin xuất hiện trên nhấp chuột đánh dấu và đóng khi nhấp vào bên ngoài điểm đánh dấu. Bạn có thể phát hiện sự kiện đó trên bản đồ.

// Detect when Marker's Info Window is closed 
    googleMap.setOnInfoWindowCloseListener(new GoogleMap.OnInfoWindowCloseListener() { 
     @Override 
     public void onInfoWindowClose(Marker marker) { 
      // Do whatever you want to do here... 
     } 
    }); 
Các vấn đề liên quan