การอ้างอิงคลาส GMSDatasetFeatureLayer


ภาพรวม

อินเทอร์เฟซที่แสดงเลเยอร์ฟีเจอร์ของชุดข้อมูล

featureType ของ GMSDatasetFeatureLayer จะเป็น GMSFeatureTypeDataset เสมอ

รับค่า GMSFeatureLayer

พร็อพเพอร์ตี้

NSString * datasetID
 รหัสของชุดข้อมูล
บูลีนพร้อมใช้งาน
 กำหนดว่า GMSFeatureLayer ที่อิงตามข้อมูลพร้อมใช้งานหรือไม่
GMSFeatureStyle *_Nullable(^)(T)สไตล์ [style]
 บล็อกการจัดรูปแบบที่จะใช้กับทุกฟีเจอร์ในเลเยอร์นี้

เอกสารประกอบเกี่ยวกับฟังก์ชันของสมาชิก

- (instancetype) initWithFeatureType: (GMSFeatureType) featureType

สร้างอินสแตนซ์เลเยอร์ฟีเจอร์สำหรับการทดสอบ

วิธีนี้ควรใช้สำหรับการทดสอบหน่วยของคุณเท่านั้น ในการใช้งานจริง ควรสร้างอินสแตนซ์ GMSFeatureLayer เท่านั้น


เอกสารเกี่ยวกับพร็อพเพอร์ตี้

- (NSString*) datasetID [read, assign]

รหัสของชุดข้อมูล

- (BOOL) มีให้บริการ [read, assign, inherited]

กำหนดว่า GMSFeatureLayer ที่อิงตามข้อมูลพร้อมใช้งานหรือไม่

การจัดรูปแบบตามข้อมูลต้องใช้กรอบโลหะ รหัสแผนที่ที่ถูกต้อง และประเภทฟีเจอร์จึงจะใช้ได้ หากเป็น NO การจัดรูปแบบสำหรับ GMSFeatureLayer จะกลับไปเป็นค่าเริ่มต้นและจะไม่มีการทริกเกอร์เหตุการณ์

- (GMSFeatureStyle* _Nullable(^ style)(T)) [read, write, assign, inherited]

บล็อกการจัดรูปแบบที่จะใช้กับทุกฟีเจอร์ในเลเยอร์นี้

บล็อกรูปแบบจะใช้กับฟีเจอร์ที่มองเห็นได้ทั้งหมดในวิวพอร์ตเมื่อมีการเรียกใช้ตัวตั้งค่า และทำงานหลายครั้งสำหรับฟีเจอร์ที่ตามมาที่เข้าสู่วิวพอร์ต

ฟังก์ชันนี้ต้องเป็นฟังก์ชันเชิงกำหนดและส่งคืนผลลัพธ์ที่สม่ำเสมอเมื่อนำไปใช้กับชิ้นส่วนแผนที่ หากมีการเปลี่ยนแปลงข้อกำหนดการจัดรูปแบบของฟีเจอร์ใดก็ตาม คุณต้องตั้งค่า 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
 }