2013-01-04 19 views
5

में एमकेमैप व्यू में डॉट (सर्कल) के साथ नीली पिन कैसे दिखाएं मेरा प्रश्न थोड़ा जटिल लग सकता है लेकिन मुझे स्पष्टीकरण दें। मैं mkmapview का उपयोग कर रहा हूं, इसमें मैं ब्लू डॉट और सर्कल के साथ वर्तमान उपयोगकर्ता स्थान दिखाना चाहता हूं, लेकिन यह वास्तव में वही नहीं है जो मैं चाहता था। चूंकि मैं एक आईफोन एप्लीकेशन बना रहा हूं, इसलिए मैं एकीकरण को मैप करने के लिए नया हूं, यह मेरे लिए मुश्किल हो रहा है। अगर कोई मुझे अपने डेमो के लिए एक लिंक प्रदान कर सकता है या मुझे समझा सकता है कि सर्कल के साथ ब्लू डॉट के साथ उपयोगकर्ता स्थान कैसे दिखाना है मानचित्र पर तो यह मेरे लिए बहुत मददगार होगा। अग्रिम धन्यवादआईफोन

+1

यह एमकेमैप व्यू की एक डिफ़ॉल्ट विशेषता है, कृपया अपना नक्शा देखें संपत्ति शोसर स्थान को सही और वहां जाएं ... –

उत्तर

3

यह एमकेमैप व्यू क्लास के गुणों में से एक है। डिफ़ॉल्ट मान नहीं है, इसलिए बस इसे अपने कोड में YES पर सेट करें।

ध्यान दें कि यदि आप स्टोरीबोर्ड में अपने व्यू कंट्रोलर पर मैप व्यू जोड़ते हैं, तो विशेषता निरीक्षक को देखें, डिफ़ॉल्ट रूप से आपके मानचित्र दृश्य पर अन्य टिप्पणियां चेक की गई हैं (बिल्डिंग, ब्याज के अंक) उपयोगकर्ता स्थान को छोड़ दें। मुझे यह खोजने में थोड़ी देर लग गई, ऐसा लगता है कि मैं छिप रहा हूं और तलाश रहा हूं, कोई फर्क नहीं पड़ता कि यह अनचेक छोड़ना क्यों महत्वपूर्ण है।

self.mapView.showsUserLocation = YES; 

thexande जैसा कि बताया जा swift3 के लिए आप सच को यह निर्धारित करने के लिए करना होगा:

self.mapView.showsUserLocation = true; 
+1

इसे स्विफ्ट 3 के लिए सही पर सेट करें। – thexande

+0

@thexande हाँ स्विफ्ट 3 के लिए आपको सत्य पर सेट करने की आवश्यकता है। –

+0

आप इसे स्टोरीबोर्ड –

3

viewForAnnotation विधि के शीर्ष करने के लिए इस जोड़ें:

अगर ([एनोटेशन isKindOfClass: [MKUserLocation वर्ग]]) वापसी नहीं के बराबर;

विशेष उपयोगकर्ता स्थान एनोटेशन एमकेयूसर स्थान का प्रकार है और उस मामले में वापस लौटने के लिए नक्शा दृश्य को ब्लू डॉट के लिए डिफ़ॉल्ट दृश्य खींचने के लिए बताता है। और एमके मैपव्यू संपत्ति में जाएं और शो उपयोगकर्ता स्थान की जांच करें ....

2

स्विफ्ट 3 के लिए

if (annotation.isKind(of: MKUserLocation.self)){ 
     return nil 
    } 

यह आप के रूप में नीले डॉट लोगों को दिखाए जाएंगे स्विफ्ट के लिए उपयोगकर्ता स्थान 3.

इस सह को रखें MapView viewFor एनोटेशन समारोह में डी

1

@Ohmy का जवाब सही है, लेकिन मेरे कार्यक्रम में मामला अलग था:

iOS10 से आप अपने अनुप्रयोग Info.plist आपकी आवश्यकता के आधार पर में NSLocationWhenInUseUsageDescription या NSLocationAlwaysUsageDescription कुंजी जोड़ने की जरूरत है।

+0

के माध्यम से भी सेट कर सकते हैं यह मेरे लिए काम नहीं कर रहा है! :( – nirav

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

  • कोई संबंधित समस्या नहीं^_^