Toolkit

ArcGIS Maps SDK for Swift offers an open source toolkit that contains ready-made UI components to simplify the development of mapping and GIS apps in Swift. Check out the examples project to see these components in action or read through the documentation to learn more about them.

To use Toolkit in your project:

Toolkit Components

  • Authenticator - Displays a user interface when network and ArcGIS authentication challenges occur.
  • BasemapGallery - Displays a collection of basemaps.
  • Bookmarks - Shows bookmarks, from a map, scene, or a list.
  • Compass - Shows a compass direction when the map is rotated. Auto-hides when the map points north.
  • FeatureFormView - Enables users to edit field values of a feature using pre-configured forms.
  • Floating Panel - Allows display of view-related content in a "bottom sheet".
  • FloorFilter - Allows filtering of floor plan data in a geo view by a site, a building in the site, or a floor in the building.
  • FlyoverSceneView - Allows you to explore a scene using your device as a window into the virtual world.
  • JobManager - Manages saving and loading jobs so that they can continue to run if the app is backgrounded or even terminated by the system.
  • OverviewMap - Displays the visible extent of a geo view in a small "inset" map.
  • PopupView - Displays details, media, and attachments of features and graphics.
  • Scalebar - Displays current scale reference.
  • SearchView - Displays a search experience for geo views.
  • TableTopSceneView - Allows you to anchor scene content to a physical surface, as if it were a 3D-printed model.
  • UtilityNetworkTrace - Runs traces on a web map published with a utility network and trace configurations.
  • WorldScaleSceneView - Allows you to integrate scene content with the real world.

Enhancements in 200.4

Augmented Reality

The Augmented Reality (AR) toolkit components allow quick and easy integration of AR into your application for a wide variety of scenarios. Last release we added support for Flyover and Tabletop modes. This release adds support for World-scale mode. In this mode, scene content is placed in the real world by matching the scene’s virtual camera position and orientation to that of the physical device camera. It creates the illusion that your GIS content is physically present in the world around you.

AR Demo

The toolkit uses ARKit, Apple's augmented reality framework to display the live camera feed and handle real world tracking. Refer to the documentation for more information.

Feature Form

The Feature Form toolkit component provides an easy way for developers to add attribute editing capabilities to their existing applications. The toolkit component supports single- and multi-line text boxes, multiple choice controls like combo boxes and radio buttons, on/off switches, and a date-time picker control. These editing controls can be arranged and organized into groups, and support custom Arcade expressions to control their visibility, editability, whether they are required, or compute the value for a particular attribute. Refer to the documentation for more information.

Issues resolved

  • #540 - Synchronize supported languages with SDK
  • #541 - Use Dejavu to mock unit tests
  • #547 - FloatingPanel - Fix locked detent
  • #564 - Don't show error text for thumbnail errors
  • #607 - Scalebar - Revise auto-hide behavior
  • #588 - Centralize API key location for automated unit test runs
  • #589 - Add test plans

Resources

Instructions

Swift Package Manager

  1. Open your Xcode project. In the menu bar, select File > Add Package Dependencies...
  2. In the search bar, enter https://github.com/Esri/arcgis-maps-sdk-swift-toolkit as the package repository URL.
  3. Optionally, select an option for the Dependency Rule if you want to specify an exact version or a range of versions to use.
  4. Click Add Package.
  5. Add import ArcGIS and import ArcGISToolkit in your source code and start using the toolkit components.

New to Swift Package Manager? Visit swift.org/package-manager/.

Access ArcGIS location services

The toolkit examples app has been updated to make use of ESRI basemaps defined with default basemap styles. These basemaps take advantage of geographically load-balanced ArcGIS location services and allow you to monitor usage with API keys or access tokens from user authentication. To use the toolkit examples app, you must set an API key or authenticate an ArcGIS user. For more information, see Get an access token.

SwiftLint

Both the toolkit and examples app support SwiftLint. You can install SwiftLint from here. It is not necessary to have it installed in order to build, but you will get a warning without it. The specific rules the linter uses can be found in the swiftlint.yml files in the Toolkit and Examples directories.

Issues

Find a bug or want to request a new feature? Please let us know by submitting an issue.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.