POST
|
| EDIT: To clarify, I want to limit the fields that are shown in the popup as well as add text that is not in the field data. You can use the `FieldsPopupElement` to display your list of fields. It has one initializer, _public convenience init(fields: [PopupField] = [])_ that takes the list of fields to display. You would create the fields popup element (and a TextPopupElement if desired) and add them to the PopupDefinition. One important thing to note if you are writing your own popup view: you *must* call `Popup.evaluateExpressions` prior to displaying the popup. This call does all the variable substitutions needed along with evaluating all Arcade expressions. The `Popup.evaluatedElements` property will contain the list of elements for display.
... View more
01-26-2023
03:08 PM
|
0
|
0
|
917
|
POST
|
Thank you for your question! The easiest way to display popups is to define them in your web map and consume them in your application. The Swift Toolkit has a `PopupView` which does exactly that. You can find it here. It uses the array of `PopupElement`s defined in the `PopupDefinition` (loaded from the web map) to display the feature information. There is a popup example in the Toolkit's Example app that shows how it's used. If you are not using a web map, you will need to create the `PopupElements` you need and add them to the `PopupDefinition`'s `element` property. The following are the possible element types: TextPopupElement - displays text (including HTML strings) FieldsPopupElement - displays a list of field data AttachmentsPopupElement - displays feature attachments MediaPopupElememt - displays images and charts There is one additional type, `ArcadePopupElement`, that is not displayed, but when evaluated creates one or more elements of the other types. The `TextPopupElement` will take an HTML (or regular) string, and display it in the same way the the v100.x `customDescription` did. Once you have the elements defined in the popup definition you can create a popup and use that with the Popup Toolkit component. You can also use the Popup view Toolkit code as a guide if you want to build your own popup view. Feel free to reach out if you need more information. Mark
... View more
01-26-2023
02:44 PM
|
0
|
0
|
925
|
BLOG
|
The ArcGIS Maps SDK for Swift Toolkit contains open-source components that will simplify your iOS app development. It is built off of the v200.0.0-beta version of the new ArcGIS Maps SDK for Swift. It includes: - An architecture based on SwiftUI and the ArcGIS Maps SDK for Swift. - Eleven components, including a compass, scale bar, custom search view, general-purpose floating panel, Utility Network trace tool, floor filter, and popup view. - Support for iOS v15.0 and newer and Xcode 14.0 and newer. You can find the Toolkit here. See this blog post for information on the SDK release. We hope you enjoy the new release! Let us know what you're building with it.
... View more
12-14-2022
11:56 AM
|
1
|
0
|
637
|
POST
|
Ha ha ha, yea codable structs are pretty cool. If you need any more help or have questions, feel free to reach out! Mark
... View more
11-15-2022
09:45 AM
|
0
|
0
|
671
|
POST
|
Hey, there's one other thing you can do, if "Identify" doesn't meet your needs. You can use the "AGSJSONRequestOperation" class to make the REST API request for "getSampes" yourself. The REST API for that is here. The class doc is here. Hope that helps, Mark
... View more
11-15-2022
08:55 AM
|
0
|
0
|
676
|
POST
|
Hello, and thank you for your question! The "getSamples" method is not supported, but "Identify" is. "Identify" is similar to "getSamples", but not quite the same. Here's a snippet of the doc from "AGSRasterLayer": Each raster layer supports identify on its individual cells when it is displayed in an @c AGSMapView or @c AGSSceneView. You can use one of the "Identify" methods on the "AGSGeoView". Let us know if you have more questions. Mark
... View more
11-15-2022
08:03 AM
|
0
|
0
|
680
|
POST
|
Thank you for your question. The arcgis subdirectory is for internal use only, and shouldn't be modified or, as you found out, things may not work correctly. In general, it is not recommended to delete the temp folder contents of a running app as you may not know who/what has been storing files there. I would recommend storing your temporary files that you may need to delete in a dedicated folder inside the temp directory and then just delete the files in that folder when necessary. This will separate out your files from those that the ArcGIS SDK need (and other temporary files). Let us know if you have any further questions. Mark
... View more
11-14-2022
03:06 PM
|
2
|
0
|
838
|
POST
|
Unfortunately, the location display is only available in 2D and the `AGSModelSceneSymbol` is a 3D symbol, so that won't be possible. If you can get the list of points out from the model, you should be able to create an `AGSPolygon` to display it as in the example above. Mark
... View more
11-08-2022
12:21 PM
|
0
|
0
|
1116
|
POST
|
That's good (that it's called in `viewDidLoad()`). Can you check what `autoPanMode`, the location display is in (some modes use different symbols)? Or you can try setting all the `locationDisplay` symbols: mapView.locationDisplay.accuracySymbol = symbol
mapView.locationDisplay.acquiringSymbol = symbol
mapView.locationDisplay.headingSymbol = symbol
mapView.locationDisplay.courseSymbol = symbol Also, you can try setting the symbol to a basic symbol, to see if the issue is with the multi-layer symbol or not: mapView.locationDisplay.defaultSymbol = AGSSimpleMarkerSymbol(style: .diamond, color: .green, size: 24.0) Mark
... View more
11-07-2022
12:44 PM
|
0
|
2
|
1136
|
POST
|
When are you setting the symbol on the mapView.locationDisplay? mapView.locationDisplay.defaultSymbol = symbol In my test code, I put it in the `viewDidLoad()` method to ensure that the mapView was visible on the screen. Mark
... View more
11-07-2022
11:40 AM
|
0
|
2
|
1140
|
POST
|
Hello and thank you for your question. Creating a multi-layer symbol requires several steps. Below is code to create a square polygon symbol using custom points and using that as the default location display symbol. // The array of points for our shape (polygon), a 1 x 1 square
// The size is set on the final symbol, below.
let points = [
AGSPoint(x: 0, y: 0, spatialReference: nil),
AGSPoint(x: 0, y: 1, spatialReference: nil),
AGSPoint(x: 1, y: 1, spatialReference: nil),
AGSPoint(x: 1, y: 0, spatialReference: nil)
]
// Create the polygon from our points.
let polygon = AGSPolygon(points: points)
// Create a red solid fill symbol layer.
let redFill = AGSSolidFillSymbolLayer(color: .red)
// Create a multi-layer polygons ymbol from the solid fill layer.
let multiLayerPolygonSymbol = AGSMultilayerPolygonSymbol(symbolLayers: [redFill])
// Create a vector marker element using our polygon geometry and multi-layer symbol.
let vectorElement = AGSVectorMarkerSymbolElement(geometry: polygon, multilayerSymbol: multiLayerPolygonSymbol)
// Create a vector marker symbol layer from our element.
let vectorMarker = AGSVectorMarkerSymbolLayer(vectorMarkerSymbolElements: [vectorElement])
// Create the multi-layer point symbol.
let symbol = AGSMultilayerPointSymbol(symbolLayers: [vectorMarker])
// Set the size of our symbol.
symbol.size = 24.0
// Set our symbol as the location display symbol.
mapView.locationDisplay.defaultSymbol = symbol You can modify the "points" array to get any geometry you'd like. Regarding animation, there is no built-in animation capabilities with the Runtime as relates to the location display or graphics. However it is possible to programmatically modify the symbol/geometry to get animation. You can see some code to animate a graphics overlay graphic in an Esri Community response here: https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/make-a-pulse-animation-in-agspicturegraphics/m-p/136855#M1274 Let us know if you have more questions! Mark
... View more
11-07-2022
08:40 AM
|
0
|
4
|
1152
|
POST
|
Thank you for the clarification. I'm going to pull in a colleague familiar with the intricacies of Authentication to help out. One of us will reply with feedback. -Mark
... View more
11-02-2022
02:30 PM
|
1
|
0
|
1096
|
POST
|
Hello, sorry to hear you are having issues. Which method(s) are you using to create the AGSFeatureLayer? If you're using an `AGSServiceFeatureTable` to create the layer, you can simply set a credential on it, so you don't have to mess with tokens or anything else. If the service can be authenticated on different environments, then you should be all set. `AGSServiceFeatureTable` inherits from `AGSRemoteResource`. That protocol has a `credential` property that you can use to prevent authentication challenges from being displayed to the user (provided the credential is valid for the resource you're trying to access). All classes that inherit from `AGSRemoteResource` operate that way. Give that a try and if it doesn't work I'll be more than happy to dig into it further with you. -Mark
... View more
11-02-2022
08:59 AM
|
0
|
2
|
1106
|
POST
|
I created a similar scenario, based on your information. It seems to be working for me, but let me know if this mimic's your situation. The items in the list view are `AGSPopup`s. They don't have a title, so I'm simply using the "popup.geoElement.geometry.description" as the text in the table view cell. Tapping on a row creates a new "AGSPopupsViewController" with a single Popup and then pushes it onto the navigation stack: "navigationController?.pushViewController(popupsViewController, animated: true)" I'm using Xcode 14 and the iPad Pro (9.7-inch) iOS 16 simulator. Let me know how well this matches your code; if you are able provide some code that reproduces the issue in a simple project, that would help. Mark
... View more
09-16-2022
02:27 PM
|
0
|
1
|
567
|
POST
|
Sorry to hear you are having problems. I have tested the basic scenario with the "AGSPopupsViewController" and did not see any issues with iOS 16 (or iOS 15.5) in the simulator. If you could provide a bit more information about what context you're displaying the popups from I can help you resolve your issue. You said you're using iOS 16. Are you running on a device or simulator (or doesn't it matter)? If you could provide some screen shots of what you're seeing that would be great. Also, some more information on what the view controller hierarchy is, either through some sample code/pseudo code/screen shots, that would help. -Mark
... View more
09-15-2022
09:57 AM
|
0
|
3
|
577
|
Title | Kudos | Posted |
---|---|---|
2 | 08-19-2024 02:33 PM | |
1 | 05-31-2023 09:26 AM | |
1 | 04-19-2023 08:58 AM | |
1 | 04-07-2023 07:49 AM | |
1 | 03-29-2023 08:01 AM |
Online Status |
Offline
|
Date Last Visited |
08-21-2024
01:16 AM
|