खास जानकारी
एक ही GMSFeatureType
की सभी सुविधाओं के कलेक्शन को दिखाने वाली क्लास, जिसकी स्टाइल को क्लाइंट पर बदला जा सकता है.
हर GMSFeatureType
के लिए एक GMSFeatureLayer
होगा.
सार्वजनिक सदस्य के फ़ंक्शन | |
(इंस्टेंस टाइप) | - initWithFeatureType: |
टेस्टिंग के लिए, सुविधा की लेयर का इंस्टेंस बनाएं. | |
प्रॉपर्टी | |
GMSFeatureType | featureType |
इस लेयर से जुड़ा सुविधा टाइप. | |
बूल | उपलब्ध है |
इससे यह पता चलता है कि डेटा-ड्रिवन GMSFeatureLayer उपलब्ध है या नहीं. | |
GMSFeatureStyle *_Nullable(^)(T) | स्टाइल |
इस लेयर की सभी सुविधाओं पर स्टाइलिंग ब्लॉक लागू किया जाना है. |
मेंबर फ़ंक्शन से जुड़ा दस्तावेज़
- (इंस्टेंसटाइप) initWithFeatureType: | (GMSFeatureType) | featureType |
टेस्टिंग के लिए, सुविधा की लेयर का इंस्टेंस बनाएं.
इस तरीके का इस्तेमाल सिर्फ़ यूनिट टेस्ट के लिए किया जाना चाहिए. प्रोडक्शन में, GMSFeatureLayer
इंस्टेंस सिर्फ़ SDK टूल की मदद से बनाए जाने चाहिए.
प्रॉपर्टी का दस्तावेज़
- (GMSFeatureType) featureType [read, assign] |
इस लेयर से जुड़ा सुविधा टाइप.
लेयर से जुड़ी सभी सुविधाएं इसी तरह की होंगी.
- (BOOL) उपलब्ध है [read, assign] |
इससे यह पता चलता है कि डेटा-ड्रिवन GMSFeatureLayer
उपलब्ध है या नहीं.
डेटा-ड्रिवन स्टाइलिंग के लिए, मेटल फ़्रेमवर्क, एक मान्य मैप आईडी, और सुविधा का टाइप लागू करना ज़रूरी होता है. अगर NO
हो, तो GMSFeatureLayer
की स्टाइलिंग डिफ़ॉल्ट पर वापस आ जाती है और इवेंट ट्रिगर नहीं होते हैं.
- (GMSFeatureStyle* _Nullable(^ style)(T)) [read, write, assign] |
इस लेयर की सभी सुविधाओं पर स्टाइलिंग ब्लॉक लागू किया जाना है.
सेटर को कॉल करते समय, स्टाइल ब्लॉक, व्यूपोर्ट में दिखने वाली सभी सुविधाओं पर लागू होता है. साथ ही, व्यूपोर्ट में शामिल होने वाली बाद की सुविधाओं के लिए इसे कई बार चलाया जाता है.
फ़ंक्शन को डिटर्मिनिस्टिक होना चाहिए और इसे मैप टाइल पर लागू करने पर, एक जैसे नतीजे देने चाहिए. अगर किसी भी सुविधा की स्टाइलिंग से जुड़ी जानकारी में बदलाव होता है, तो style
को फिर से सेट करना ज़रूरी है. style
सेटर को कॉल किए बिना स्टाइल ब्लॉक के व्यवहार में बदलाव करने से, व्यवहार की कोई जानकारी नहीं दी जाएगी. इसमें पुरानी और/या टूटी हुई मैप रेंडरिंग भी शामिल है. नीचे दिया गया उदाहरण देखें:
{.swift} var selectedPlaceIDs = Set<String>() var style = FeatureStyle(fill: .red, stroke: .clear, strokeWidth: 0) layer.style = { feature in selectedPlaceIDs.contains(feature.placeID) ? style : nil } selectedPlaceIDs.insert("foo") style = FeatureStyle(fill: .clear, stroke: .blue, strokeWidth: 1.5) layer.style = { feature in selectedPlaceIDs.contains(feature.placeID) ? style : nil }