2012-12-18 25 views
72

के लिए ज़ूम स्तर सेट करें क्या नया Google मानचित्र API v2 के साथ मेरे स्थान के लिए ज़ूम स्तर बदलना संभव है? यदि आप GoogleMap.setEnableMyLocation (सत्य) सेट करते हैं; आपको अपना स्थान ढूंढने के लिए मानचित्र पर एक बटन मिलता है। यदि आप उस पर क्लिक करते हैं, तो नक्शा आपको अपने स्थान पर लाएगा और इसे कुछ स्तर पर ज़ूम करेगा। क्या मैं इस ज़ूम को कम या ज्यादा के रूप में बदल सकता हूं?एंड्रॉइड Google मैप्स v2 - myLocation

+0

आप MyLocation के किसी भी विचार की क्या ज़रूरत है यकीन है कि गूगल मैप्स के लिए अपनी निर्भरता सही इस नवीनतम प्रयोग इस

संकलन ': खेलने-सेवाओं 11.8.0 com.google.android.gms' है कि सुनिश्चित करें बटन ज़ूम स्तर? मुझे वह मूल्य चाहिए। –

उत्तर

136

यह संदिग्ध है कि आप इसे डिफ़ॉल्ट myLocation मार्कर के साथ क्लिक पर बदल सकते हैं। हालांकि, यदि आप ऐप को अपने स्थान पर स्वचालित रूप से ज़ूम इन करना चाहते हैं, तो मैं this question

पर ध्यान दें कि ध्यान दें कि मैंने जो उत्तर प्रदान किया है वह ज़ूम इन नहीं करता है, लेकिन यदि आप ऑनलाक्शन चेंज विधि को संशोधित करते हैं आप जो कुछ भी ज़ूम स्तर चुन सकते हैं नीचे एक की तरह हो सकता है, आप की तरह:

@Override 
public void onLocationChanged(Location location) 
{ 
    if(mListener != null) 
    { 
     mListener.onLocationChanged(location); 

     //Move the camera to the user's location and zoom in! 
     mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(location.getLatitude(), location.getLongitude()), 12.0f)); 
    } 
} 
108

तुम भी उपयोग कर सकते हैं:

mMap.animateCamera(CameraUpdateFactory.zoomTo(17.0f));  

सिर्फ = न्यूनतम मूल्य के बीच किसी भी वांछित मूल्य के लिए ज़ूम मान को बदलने के लिए 2.0 और अधिकतम मूल्य = 21.0।

एपीआई चेतावनी देता है कि सभी स्थानों पर अधिकतम ज़ूम पर या उसके पास मूल्यों पर टाइल्स नहीं हैं।

CameraUpdateFactory में उपलब्ध ज़ूम विधियों के बारे में अधिक जानकारी के लिए this देखें।

+0

डिफ़ॉल्ट ज़ूम स्तर क्या है ?? –

10

HeatfanJohn की है, जहां मैं वर्तमान ज़ूम स्तर को अपेक्षाकृत ज़ूम बदलने से थोड़ी अलग समाधान:

// Zoom out just a little 
map.animateCamera(CameraUpdateFactory.zoomTo(map.getCameraPosition().zoom - 0.5f)); 
15
स्थान के साथ

- नई GoogleMaps SDK में:

mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(chLocation,14)); 
+1

क्या नयाLatLngZoom() और ज़ूम() के बीच कोई अंतर है जो कई अन्य उत्तरों का संदर्भ दिया गया है? ऐप में, अंतिम उपयोगकर्ता परिप्रेक्ष्य से, ये वही दिखते हैं। – portfoliobuilder

0
Location locaton; 
double latitude = location.getlatitude; 
double longitude = location.getlongitude; 

यदि आप चाहते हैं ज़ूम को बचाने या इसे हर समय प्राप्त करने के लिए, आपको बस निम्नलिखित

int zoom = mMap.getCameraPosition().zoom; 

//To set that just use 

mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(getlatitude(), getlongitude),zoom); 
012 पर कॉल करने की आवश्यकता है
1

आप

map:cameraZoom="13" 

मुझे आशा है कि यह आपकी समस्या का समाधान होगा ...

0

onMapReady में() विधि

परिवर्तन zoomLevel किसी भी वांछित को maps_activity.xml में केवल एक लाइन लिखने के लिए है मूल्य।

float zoomLevel = (float) 18.0; 
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latLng, zoomLevel)); 
0

यहां तक ​​कि मैं हाल ही में एक ही क्वेरी .... था कुछ कैसे ऊपर उल्लेख किया setmaxzoom वरना मानचित्र में से कोई भी: CameraZOOM = "13" काम नहीं किया तो मैंने पाया कि depenedency जो मैं इस्तेमाल किया था

संबंधित मुद्दे