GoogleMaps Framework Reference

GMSFeatureLayer

  @interface 
 GMSFeatureLayer 
 < 
 __covariant 
 T 
 : 
 id 
 < 
  GMSFeature 
 
 >> 
 : 
 NSObject 
 

A class representing a collection of all features of the same GMSFeatureType , whose style can be overridden on the client. Each GMSFeatureType will have one corresponding GMSFeatureLayer .

  • The feature type associated with this layer. All features associated with the layer will be of this type.

    Declaration

    Swift

      var 
     featureType 
     : 
     FeatureType 
     { 
     get 
     } 
     
    

    Objective-C

      @property 
     ( 
     nonatomic 
     , 
     readonly 
     ) 
      GMSFeatureType 
     
     _Nonnull 
     featureType 
     ; 
     
    
  • Determines if the data-driven GMSFeatureLayer is available. Data-driven styling requires the Metal Framework, a valid map ID and that the feature type be applied. If NO , styling for the GMSFeatureLayer returns to the default and events are not triggered.

    Declaration

    Swift

      var 
     isAvailable 
     : 
     Bool 
     { 
     get 
     } 
     
    

    Objective-C

      @property 
     ( 
     nonatomic 
     , 
     readonly 
     , 
     getter 
     = 
     isAvailable 
     ) 
     BOOL 
     available 
     ; 
     
    
  • Styling block to be applied to all features in this layer.

    The style block is applied to all visible features in the viewport when the setter is called, and is run multiple times for the subsequent features entering the viewport.

    The function is required to be deterministic and return consistent results when it is applied over the map tiles. If any styling specs of any feature would be changed, style must be set again. Changing behavior of the style block without calling the style setter will result in undefined behavior, including stale and/or shattered map renderings. See the example below:

     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
     } 
    

    Declaration

    Swift

      var 
     style 
     : 
     (( 
     T 
     ) 
     -> 
     FeatureStyle 
     ?)? 
     { 
     get 
     set 
     } 
     
    

    Objective-C

      @property 
     ( 
     nonatomic 
     , 
     nullable 
     ) 
      GMSFeatureStyle 
     
     * 
     _Nullable 
     ( 
     ^ 
     )( 
     T 
     _Nonnull 
     ) 
     style 
     ; 
     
    
  • Create a feature layer instance for testing.

    This method should be used for your unit tests only. In production, GMSFeatureLayer instances should only be created by the SDK.

    Declaration

    Swift

      convenience 
     init 
     ( 
     featureType 
     : 
     FeatureType 
     ) 
     
    

    Objective-C

      - 
     ( 
     nonnull 
     instancetype 
     ) 
     initWithFeatureType 
     :( 
     nonnull 
      GMSFeatureType 
     
     ) 
     featureType 
     ; 
     
    
  • Unavailable

    Declaration

    Objective-C

      - 
     ( 
     instancetype 
     ) 
     init 
     NS_DESIGNATED_INITIALIZER 
     NS_UNAVAILABLE 
     ; 
     
    
Design a Mobile Site
View Site in Mobile | Classic
Share by: