2011-09-15 58 views
7

我需要將自定義標記添加到mapview。 第一個問題:我可以使用標準/默認覆蓋/標記嗎? 第二:如果我必須爲標記疊加創建一個png,這是圖像的最佳尺寸?我是否必須爲每種屏幕尺寸(ldpi,mdpi,hdpi)創建不同的圖像?android mapview標記大小

回答

7
  1. 擴展ItemizedOverlay和使用OverlayItem,在這裏你可以設置你通過setMarker(drawable)自定義繪製。
  2. 取決於您的設計。我個人使用32x32。你應該嘗試不同的尺寸,看看它們是否合適。
  3. 是的,這是可取的。您可以使用bitmap drawable,它可以根據您的屏幕大小automatically resolve
1

雖然用戶的位置有一個默認的drawable,但是在默認的android drawable中沒有任何適合覆蓋項的東西。在Deviant ArtSmashing Magazine上有很多帶有Google Maps API的圖標包可以爲您提供幫助。

關於您對尺寸的問題,最好的做法是提供多個版本的圖標以支持不同的屏幕尺寸和密度 - 尤其是如果您的應用將具有廣泛的分佈並且針對多種API級別。或者,如果您擔心可繪製物體佔用的物理屏幕空間,但不想手動進行大量調整,則可以在檢測屏幕密度時隨時縮放所有可繪製物體,基於一個通用縮放.xml文件:From the Android Doco

就我個人而言,我採取阻力最小的路徑,並提供我生成的每個drawable的三個版本。由你決定,隊友!

+0

你能給我每個版本使用的大小嗎? – Arutha

+3

嘗試48x48,36x36和24x24。這就是我的分項疊加資源。 –

+2

我有64,48,32,24。我認爲baseline(mdpi)是32? – Karl