ग्राउंड ओवरले, मैप पर बने ओवरले होते हैं जो अक्षांश/देशांतर से जुड़े होते हैं निर्देशांकों को दिखाता है, ताकि वे मैप को खींचने या ज़ूम करने पर हिल सकें.
परिचय
ग्राउंड ओवरले वह इमेज होती है जिसे मैप पर जोड़ा जाता है. नापसंद करें मार्कर, ग्राउंड ओवरले का ओरिएंटेशन ऊपर की ओर होता है इसलिए, मैप को घुमाने, झुकाने या ज़ूम करने की सुविधा स्क्रीन की दिशा.
ग्राउंड ओवरले जोड़ने के लिए, एक ऐसा GMSGroundOverlay
ऑब्जेक्ट बनाएं जो दोनों को परिभाषित करता हो
एक आइकॉन और बाउंड्री हैं. इनमें से किसी को भी तय नहीं करने पर, ग्राउंड ओवरले बन जाएगा
डाला नहीं जा सकता. आपके पास ऐसी अतिरिक्त सेटिंग तय करने का विकल्प होता है जो
मैप पर इमेज की पोज़िशनिंग पर असर पड़ेगा. एक बार
ज़रूरी विकल्प हैं, तो ओवरले जोड़ने के लिए इस ऑब्जेक्ट की map
प्रॉपर्टी सेट करें.
ओवरले जोड़ना
- नया
GMSGroundOverlay
ऑब्जेक्ट इंस्टैंशिएट करें icon
प्रॉपर्टी कोUIImage
के इंस्टेंस पर सेट करें.bounds
प्रॉपर्टी कोGMSCoordinateBounds
के इंस्टेंस पर सेट करें. कॉन्टेंट बनाने बाउंड्री से, इमेज के दक्षिण पश्चिम और उत्तर-पूर्व के हिस्सों को दिखाया जाता है.- अपनी ज़रूरत के हिसाब से,
bearing
औरzoomLevel
जैसी वैकल्पिक प्रॉपर्टी सेट करें. map
प्रॉपर्टी सेट करें - मैप पर इमेज दिखेगी.
नीचे दिया उदाहरण बताता है कि किसी मौजूदा विज्ञापन में ग्राउंड ओवरले कैसे जोड़ा जा सकता है
GMSMapView
ऑब्जेक्ट.
Swift
let southWest = CLLocationCoordinate2D(latitude: 40.712216, longitude: -74.22655) let northEast = CLLocationCoordinate2D(latitude: 40.773941, longitude: -74.12544) let overlayBounds = GMSCoordinateBounds(coordinate: southWest, coordinate: northEast) // Image from http://www.lib.utexas.edu/maps/historical/newark_nj_1922.jpg let icon = UIImage(named: "newark_nj_1922") let overlay = GMSGroundOverlay(bounds: overlayBounds, icon: icon) overlay.bearing = 0 overlay.map = mapView
Objective-C
CLLocationCoordinate2D southWest = CLLocationCoordinate2DMake(40.712216,-74.22655); CLLocationCoordinate2D northEast = CLLocationCoordinate2DMake(40.773941,-74.12544); GMSCoordinateBounds *overlayBounds = [[GMSCoordinateBounds alloc] initWithCoordinate:southWest coordinate:northEast]; // Image from http://www.lib.utexas.edu/maps/historical/newark_nj_1922.jpg UIImage *icon = [UIImage imageNamed:@"newark_nj_1922"]; GMSGroundOverlay *overlay = [GMSGroundOverlay groundOverlayWithBounds:overlayBounds icon:icon]; overlay.bearing = 0; overlay.map = mapView;
ओवरले को निकालना
आप
nil
के लिए GMSGroundOverlay
की map
प्रॉपर्टी. वैकल्पिक रूप से, आप सभी को
(इसमें मैप पर मौजूद ग्राउंड ओवरले भी शामिल है. इसके लिए,
GMSMapView
clear
तरीका.
Swift
mapView.clear()
Objective-C
[mapView clear];
अगर आपको ग्राउंड ओवरले में बदलाव करने के बाद उसमें बदलाव करना है
मैप को मैप करने के लिए, पक्का करें कि GMSGroundOverlay
ऑब्जेक्ट पर आपका कंट्रोल रहे. आप
इस ऑब्जेक्ट में बदलाव करके ग्राउंड ओवरले को बाद में भी बदल सकते हैं.
Swift
let overlay = GMSGroundOverlay(bounds: overlayBounds, icon: icon) overlay.bearing = 0 overlay.map = mapView // ... overlay.isTappable = true
Objective-C
GMSGroundOverlay *overlay = [GMSGroundOverlay groundOverlayWithBounds:overlayBounds icon:icon]; overlay.bearing = 0; overlay.map = mapView; // ... overlay.tappable = YES;
इवेंट
मैप पर होने वाले इवेंट को सुना जा सकता है, जैसे कि जब कोई उपयोगकर्ता किसी
ओवरले करें. इवेंट सुनने के लिए, आपको
GMSMapViewDelegate
प्रोटोकॉल. ज़्यादा जानकारी के लिए,
इवेंट के लिए गाइड और इवेंट के तरीकों की सूची
GMSMapViewDelegate
.