2013-01-24 159 views
3


我正在研究android谷歌地圖應用程序,並且遇到了地圖標記問題。如何將按鈕添加到API v2谷歌地圖標記

這個問題可能有一個微不足道的解決方案,但搜索後,我只找到如何添加一個標記與按鈕的鏈接。我想要的是不同的:我想要一個標記,其各自的對話框有一個按鈕。

有沒有人做過類似的事情?

+0

地圖V2中沒有與標記關聯的「對話框」。你是指在點擊標記時出現的信息窗口? – CommonsWare

+0

@CommonsWare:對不起,但是完全是那個信息窗口。 – jhc

回答

6

雖然你可以創建一個InfoWindowAdapter,並通過setInfoWindowAdapter()附加到GoogleMap,量身定製的信息窗口的內容包含Button,該Button不可點擊。不顯示您從getInfoContents()InfoWindowAdapter返回的View。相反,它被轉換成Bitmap,並且該圖像是顯示的內容。

但是,您可以通過在GoogleMap上通過setOnInfoWindowClickListener()註冊的OnInfoWindowClickListener找出用戶何時點擊信息窗口。

+1

謝謝!我沒有找到很好的幫助,因爲我以前使用對話框而不是信息窗口。問題解決了! – jhc

2

@CommonsWare關於InfoContent轉換爲Bitmap的言論屬實。因此你不能使用InfoWindows。嘗試使用GoogleMap.OnMarkerClickListener事件來在MapView之上顯示您自己的視圖。 GoogleMap.OnMarkerClickListener將幫助您使用點擊標記作爲參數。

如果要在正確的位置顯示視圖,則必須計算屏幕位置。使用投影的toScreenLocation(LatLng location)方法返回Point將LatLng轉換爲GoogleMap的屏幕位置w.r.t。

有關更多信息,請參閱Projection

相關問題