{"payload":{"allShortcutsEnabled":false,"fileTree":{"docs/v1.0.10":{"items":[{"name":"CHANGELOG","path":"docs/v1.0.10/CHANGELOG","contentType":"directory"},{"name":"InteractiveLayers.md","path":"docs/v1.0.10/InteractiveLayers.md","contentType":"file"},{"name":"MapplsAPICore.md","path":"docs/v1.0.10/MapplsAPICore.md","contentType":"file"},{"name":"MapplsAPIKit.md","path":"docs/v1.0.10/MapplsAPIKit.md","contentType":"file"},{"name":"MapplsAnnotationExtension.md","path":"docs/v1.0.10/MapplsAnnotationExtension.md","contentType":"file"},{"name":"MapplsDirectionUI.md","path":"docs/v1.0.10/MapplsDirectionUI.md","contentType":"file"},{"name":"MapplsDrivingRangePlugin.md","path":"docs/v1.0.10/MapplsDrivingRangePlugin.md","contentType":"file"},{"name":"MapplsFeedbackKit.md","path":"docs/v1.0.10/MapplsFeedbackKit.md","contentType":"file"},{"name":"MapplsFeedbackUIKit.md","path":"docs/v1.0.10/MapplsFeedbackUIKit.md","contentType":"file"},{"name":"MapplsGeoanalytics.md","path":"docs/v1.0.10/MapplsGeoanalytics.md","contentType":"file"},{"name":"MapplsGeofenceUI.md","path":"docs/v1.0.10/MapplsGeofenceUI.md","contentType":"file"},{"name":"MapplsIntouch.md","path":"docs/v1.0.10/MapplsIntouch.md","contentType":"file"},{"name":"MapplsMap.md","path":"docs/v1.0.10/MapplsMap.md","contentType":"file"},{"name":"MapplsMapStyle.md","path":"docs/v1.0.10/MapplsMapStyle.md","contentType":"file"},{"name":"MapplsNearbyUI.md","path":"docs/v1.0.10/MapplsNearbyUI.md","contentType":"file"},{"name":"MapplsPinStrategy.md","path":"docs/v1.0.10/MapplsPinStrategy.md","contentType":"file"},{"name":"MapplsTrafficVectorTileOverlay.md","path":"docs/v1.0.10/MapplsTrafficVectorTileOverlay.md","contentType":"file"},{"name":"MapplsUIWidgets.md","path":"docs/v1.0.10/MapplsUIWidgets.md","contentType":"file"},{"name":"Predictive-Route-APIs.md","path":"docs/v1.0.10/Predictive-Route-APIs.md","contentType":"file"},{"name":"README.md","path":"docs/v1.0.10/README.md","contentType":"file"},{"name":"RasterCatalouge.md","path":"docs/v1.0.10/RasterCatalouge.md","contentType":"file"},{"name":"Regions.md","path":"docs/v1.0.10/Regions.md","contentType":"file"}],"totalCount":22},"docs":{"items":[{"name":"v1.0.0","path":"docs/v1.0.0","contentType":"directory"},{"name":"v1.0.1","path":"docs/v1.0.1","contentType":"directory"},{"name":"v1.0.10","path":"docs/v1.0.10","contentType":"directory"},{"name":"v1.0.11","path":"docs/v1.0.11","contentType":"directory"},{"name":"v1.0.12","path":"docs/v1.0.12","contentType":"directory"},{"name":"v1.0.13","path":"docs/v1.0.13","contentType":"directory"},{"name":"v1.0.14","path":"docs/v1.0.14","contentType":"directory"},{"name":"v1.0.15","path":"docs/v1.0.15","contentType":"directory"},{"name":"v1.0.16","path":"docs/v1.0.16","contentType":"directory"},{"name":"v1.0.2","path":"docs/v1.0.2","contentType":"directory"},{"name":"v1.0.3","path":"docs/v1.0.3","contentType":"directory"},{"name":"v1.0.4","path":"docs/v1.0.4","contentType":"directory"},{"name":"v1.0.5","path":"docs/v1.0.5","contentType":"directory"},{"name":"v1.0.6","path":"docs/v1.0.6","contentType":"directory"},{"name":"v1.0.7","path":"docs/v1.0.7","contentType":"directory"},{"name":"v1.0.8","path":"docs/v1.0.8","contentType":"directory"},{"name":"v1.0.9","path":"docs/v1.0.9","contentType":"directory"}],"totalCount":17},"":{"items":[{"name":"MapplsSDKDemo.xcodeproj","path":"MapplsSDKDemo.xcodeproj","contentType":"directory"},{"name":"MapplsSDKDemo","path":"MapplsSDKDemo","contentType":"directory"},{"name":"docs","path":"docs","contentType":"directory"},{"name":"LICENSE.md","path":"LICENSE.md","contentType":"file"},{"name":"Mappls.podspec","path":"Mappls.podspec","contentType":"file"},{"name":"Podfile","path":"Podfile","contentType":"file"},{"name":"README.md","path":"README.md","contentType":"file"},{"name":"Version-History.md","path":"Version-History.md","contentType":"file"}],"totalCount":8}},"fileTreeProcessingTime":6.768578,"foldersToFetch":[],"reducedMotionEnabled":null,"repo":{"id":491393896,"defaultBranch":"main","name":"mappls-ios-sdk","ownerLogin":"mappls-api","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-05-12T06:38:36.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/98086022?v=4","public":true,"private":false,"isOrgOwned":true},"symbolsExpanded":false,"treeExpanded":true,"refInfo":{"name":"main","listCacheKey":"v0:1695384624.0","canEdit":false,"refType":"branch","currentOid":"22caf475421bd2bd586a8d842b21587315f7613f"},"path":"docs/v1.0.10/MapplsUIWidgets.md","currentUser":null,"blob":{"rawLines":null,"stylingDirectives":null,"csv":null,"csvError":null,"dependabotInfo":{"showConfigurationBanner":false,"configFilePath":null,"networkDependabotPath":"/mappls-api/mappls-ios-sdk/network/updates","dismissConfigurationNoticePath":"/settings/dismiss-notice/dependabot_configuration_notice","configurationNoticeDismissed":null,"repoAlertsPath":"/mappls-api/mappls-ios-sdk/security/dependabot","repoSecurityAndAnalysisPath":"/mappls-api/mappls-ios-sdk/settings/security_analysis","repoOwnerIsOrg":true,"currentUserCanAdminRepo":false},"displayName":"MapplsUIWidgets.md","displayUrl":"https://github.com/mappls-api/mappls-ios-sdk/blob/main/docs/v1.0.10/MapplsUIWidgets.md?raw=true","headerInfo":{"blobSize":"35.8 KB","deleteInfo":{"deleteTooltip":"You must be signed in to make or propose changes"},"editInfo":{"editTooltip":"You must be signed in to make or propose changes"},"ghDesktopPath":"https://desktop.github.com","gitLfsPath":null,"onBranch":true,"shortPath":"0d7c7ce","siteNavLoginPath":"/login?return_to=https%3A%2F%2Fgithub.com%2Fmappls-api%2Fmappls-ios-sdk%2Fblob%2Fmain%2Fdocs%2Fv1.0.10%2FMapplsUIWidgets.md","isCSV":false,"isRichtext":true,"toc":[{"level":1,"text":"MapplsUIWidgets - UI Components SDK for iOS","anchor":"mapplsuiwidgets---ui-components-sdk-for-ios","htmlText":"MapplsUIWidgets - UI Components SDK for iOS"},{"level":2,"text":"Introduction","anchor":"introduction","htmlText":"Introduction"},{"level":3,"text":"Dependencies","anchor":"dependencies","htmlText":"Dependencies"},{"level":2,"text":"Installation","anchor":"installation","htmlText":"Installation"},{"level":3,"text":"Version History","anchor":"version-history","htmlText":"Version History"},{"level":2,"text":"Authorization","anchor":"authorization","htmlText":"Authorization"},{"level":3,"text":"MapplsAPICore","anchor":"mapplsapicore","htmlText":"MapplsAPICore"},{"level":2,"text":"Autocomplete","anchor":"autocomplete","htmlText":"Autocomplete"},{"level":3,"text":"Add an autocomplete UI control","anchor":"add-an-autocomplete-ui-control","htmlText":"Add an autocomplete UI control"},{"level":3,"text":"Add a full-screen control","anchor":"add-a-full-screen-control","htmlText":"Add a full-screen control"},{"level":4,"text":"SwiftUI Full Screen Control","anchor":"swiftui-full-screen-control","htmlText":"SwiftUI Full Screen Control"},{"level":5,"text":"Create Autosuggest View Controller","anchor":"create-autosuggest-view-controller","htmlText":"Create Autosuggest View Controller"},{"level":5,"text":"Respond To Autosuggest Events","anchor":"respond-to-autosuggest-events","htmlText":"Respond To Autosuggest Events"},{"level":3,"text":"Add a results controller","anchor":"add-a-results-controller","htmlText":"Add a results controller"},{"level":4,"text":"Add a search bar to the navigation bar","anchor":"add-a-search-bar-to-the-navigation-bar","htmlText":"Add a search bar to the navigation bar"},{"level":4,"text":"Add a search bar to the top of a view","anchor":"add-a-search-bar-to-the-top-of-a-view","htmlText":"Add a search bar to the top of a view"},{"level":3,"text":"Use a table data source","anchor":"use-a-table-data-source","htmlText":"Use a table data source"},{"level":3,"text":"Get place predictions programmatically","anchor":"get-place-predictions-programmatically","htmlText":"Get place predictions programmatically"},{"level":3,"text":"MapplsAutocompleteFilter","anchor":"mapplsautocompletefilter","htmlText":"MapplsAutocompleteFilter"},{"level":4,"text":"Parameters:","anchor":"parameters","htmlText":"Parameters:"},{"level":3,"text":"Favourite Places","anchor":"favourite-places","htmlText":"Favourite Places"},{"level":2,"text":"Place Picker View","anchor":"place-picker-view","htmlText":"Place Picker View"},{"level":3,"text":"PlacePickerViewDelegate","anchor":"placepickerviewdelegate","htmlText":"PlacePickerViewDelegate"},{"level":3,"text":"Customize Place Picker","anchor":"customize-place-picker","htmlText":"Customize Place Picker"},{"level":2,"text":"Autocomplete Attribution Appearance","anchor":"autocomplete-attribution-appearance","htmlText":"Autocomplete Attribution Appearance"},{"level":3,"text":"MapplsAttributionsSettings","anchor":"mapplsattributionssettings","htmlText":"MapplsAttributionsSettings"},{"level":4,"text":"Parameters:","anchor":"parameters-1","htmlText":"Parameters:"},{"level":2,"text":"Our many happy customers:","anchor":"our-many-happy-customers","htmlText":"Our many happy customers:"}],"lineInfo":{"truncatedLoc":"810","truncatedSloc":"557"},"mode":"file"},"image":false,"isCodeownersFile":null,"isPlain":false,"isValidLegacyIssueTemplate":false,"issueTemplateHelpUrl":"https://githubdocs.cn/articles/about-issue-and-pull-request-templates","issueTemplate":null,"discussionTemplate":null,"language":"Markdown","languageID":222,"large":false,"loggedIn":false,"newDiscussionPath":"/mappls-api/mappls-ios-sdk/discussions/new","newIssuePath":"/mappls-api/mappls-ios-sdk/issues/new","planSupportInfo":{"repoIsFork":null,"repoOwnedByCurrentUser":null,"requestFullPath":"/mappls-api/mappls-ios-sdk/blob/main/docs/v1.0.10/MapplsUIWidgets.md","showFreeOrgGatedFeatureMessage":null,"showPlanSupportBanner":null,"upgradeDataAttributes":null,"upgradePath":null},"publishBannersInfo":{"dismissActionNoticePath":"/settings/dismiss-notice/publish_action_from_dockerfile","dismissStackNoticePath":"/settings/dismiss-notice/publish_stack_from_file","releasePath":"/mappls-api/mappls-ios-sdk/releases/new?marketplace=true","showPublishActionBanner":false,"showPublishStackBanner":false},"rawBlobUrl":"https://github.com/mappls-api/mappls-ios-sdk/raw/main/docs/v1.0.10/MapplsUIWidgets.md","renderImageOrRaw":false,"richText":"
MapplsUIWidgets SDK for iOS 允许您通过快速实现预制的 UI 组件来构建丰富的应用。目前,此 SDK 拥有一个使用 AutoSuggest API 搜索地点的 Widget。
\n此库依赖于几个 Mappls 自有的库。所有依赖库将使用 CocoaPods 自动安装。
\n以下列出了运行此 SDK 所需的依赖库:
\n\n此库通过 CocoaPods
提供。要安装,只需将以下行添加到您的 podfile
中:
pod 'MapplsUIWidgets', '1.0.3'
运行 pod install
命令后,它将自动下载并设置 MapplsUIWidgets
和依赖框架。
版本 | 日期 | 描述 |
---|---|---|
1.0.3 | 2023 年 6 月 2 日 | 添加了在 AutoSuggest Widget 中显示收藏/自定义地点的功能。添加了相关回调等。 |
¨C5C | 2023 年 5 月 2 日 | 在 ¨C7C 类中添加了 ¨C6C 属性,并在 ¨C9C 类中添加了 ¨C8C 属性。 |
¨C10C | 2022 年 9 月 3 日 | 添加了 hyperLocal 属性。 |
¨C11C | 2022 年 6 月 12 日 | .Mappls UIWidget 首次发布。 |
使用任何 Mappls SDK 都需要设置 Mappls 密钥。请参阅此处的文档。
\n对于 iOS SDK 中的自动完成服务,它将返回基于用户搜索查询的地方预测。随着用户输入,自动完成服务返回有关商业、地址和兴趣点的地点建议。
\n您可以通过以下方式将自动完成添加到您的应用中:
\n添加一个自动完成 UI 控件以节省开发时间并确保一致的用户体验。
\n通过程序获取地点预测以创建定制的用户体验。
\n自动完成UI控件是一个内置自动完成功能的选择对话框。当用户输入搜索词时,该控件将展示一个可供选择的预测地点列表。当用户进行选择时,会返回一个MapplsAtlasSuggestion实例,您的应用程序可以使用此实例获取关于所选地点的详细信息。
\n当您想要模态上下文,即自动完成UI控件临时替换您的应用程序UI,直到用户做出选择为止时,请使用全屏控件。此功能由MapplsAutocompleteViewController类提供。当用户选择地点时,您的应用程序将收到回调。
\n要将全屏控件添加到您的应用程序
\n以下示例演示了在用户点击按钮时启动MapplsAutocompleteViewController的一种可能的方式。
\n为了响应用户自动建议事件,例如在从自动建议的结果中选择一个结果时执行某个动作。在SwiftUI中,可以使用带有代理、数据源和用户事件的 Coordinator。UIViewRepresentable 协议定义了 makeCoordinator() 方法,该方法创建 Coordinator 实例。将以下代码添加到声明 Coordinator 类
\n然后向以下方法添加以下方法到 ¨C14C
\n¨C72C 在上述类中,使用以下代码设置 Coordinator。
\n当您想要对文本输入UI有更多控制时,请使用结果控制器。结果控制器根据输入UI的焦点动态切换结果列表的可见性。
\n要将结果控制器添加到您的应用程序
\n将 UISearchController 的搜索栏放入您的应用 UI 中有几种方法
\n以下代码示例展示了添加结果控制器、将搜索栏添加到导航栏以及处理用户的选项
\nªC83C 要使搜索栏正确显示,您的应用视图控制器必须位于UINavigationController 中。
\n以下代码示例显示了将搜索栏添加到视图顶部的操作。
\n您可以使用 MapplsAutocompleteTableDataSource 类来驱动 UISearchDisplayController 的表格视图。
\n要使用 MapplsAutocompleteTableDataSource 显示搜索控制器
\n以下代码示例展示了使用 MapplsAutocompleteTableDataSource 类驱动 UISearchDisplayController 的表格视图。
\n您可以为 autocomplete 小部件提供的界面创建一个自定义搜索界面。为此,您的应用必须以编程方式获取地点预测。您的应用可以通过使用 Mappls 的库——ªC15C 获取预测地点名称和/或地址的列表。有关更多信息,请转到。
\n此类表示可能应用于自动完成请求的一组限制。这允许自定义自动完成建议,仅显示那些感兴趣的地方。
\nªC92C
\n一个位置,用作查找指定地址时的提示。
\n此属性优先显示靠近特定位置的结果,通常是用户的当前位置。如果此属性的值为 nil(默认值),则不优先显示特定位置。
\nªC93C
\n用来提示查找指定地址的位置的缩放级别。
\nªC94C
\n它允许在响应中获取地址碎语。默认值是ªC16C。如果传入值为 true,则仅接收 MapplsAtlasSuggestion 的地址碎语响应,其类型为 MapplsAddressTokens
\nªC95C
\n基于此,将只返回特定类型的地点。
\n其数据类型为 MapplsPodType,它是从 MapplsAPIKit 继承而来的。
\nªC96C
\n基于此,将只返回特定类型的响应。
\n这可以设置 MapplsMapplsPinFilter 或 MapplsBoundsFilter 的对象,这两个对象都是从 MapplsAPIKit 继承而来的。
\nªC97C
\n此用于根据国家/地区对搜索进行偏好。其数据类型是 MapplsRegionType(从 MapplsAPIKit)。默认设置为仅印度地区的区域。\n当前支持的国家包括斯里兰卡、印度、不丹、孟加拉国、尼泊尔。如果未提供,则默认为印度
\n收藏或自定义地点可以设置为在 Autosuggest 的结果中显示。
\n默认情况下,通过输入任何文本进行搜索时,收藏夹也将被过滤。可以通过设置全局布尔属性ªC17C的值来禁用过滤。禁用它表示始终在结果中显示收藏夹。
\n默认情况下,结果显示最多两个收藏夹。这可以通过设置属性 "-19C" 的值来配置。其默认值为 2。最小值可以是 0,最大值可以是 10。
\n以下是设置收藏地方所用的代码行。
\n可以使用不同的代理方法来处理所选收藏项的回调。请参阅此处。
\n-98C
\nPlace Picker View 是一个 UIView 组件,允许用户使用交互式地图来挑选地点。
\n用户可以在成功对所选位置进行反向地理编码后,从地图中心选择地理位置。
\n"-20C" 是一个类,其实例可以创建并添加到 ViewController。以下是示例代码以了解情况
\n-100C
\n如上示例代码,“-21C” 是一个协议类,它提供了不同的代理方法,可以根据要求使用。
\n添加 “-22C” 的实例时,它将加载一个默认视图,该视图包含地图上的地图标记图像。但是,默认视图可以通过以下描述的一些属性进行修改
\n-102C
\n可以使用属性 'markerView' 来覆盖地图上标记的视图。这是一个 UIView 类型,因此它可以接受自定义设计的视图以及 UIImageView。
\n-104C
\n在拖动地图时默认显示标记的阴影。可以通过使用属性 'isMarkerShadowViewHidden' 来更改此阴影的可见性。
\n-106C
\n可以通过属性 'searchButtonBackgroundColor' 来更改搜索按钮的背景色。
\n-108C
\n可以通过属性 'searchButtonImage' 来更改搜索按钮的图像。
\n-110C
\n可以通过属性 'isSearchButtonHidden' 来更改搜索按钮的可见性。
\n-112C
\n可以通过属性 'placeNameLabelTextColor' 来更改地点名称标签的字体颜色。
\n-114C
\n可以通过属性 'addressLabelTextColor' 来更改地点地址标签的字体颜色。
\n-116C
\n可以通过属性 'pickerButtonTitleColor' 来更改选择位置的按钮标题的字体颜色。
\n-118C
\n可以通过属性 'pickerButtonBackgroundColor' 来更改选择位置的按钮的背景色。
\n-120C
\n可以通过属性 'pickerButtonTitle' 来更改选择位置的按钮标题。
\n-122C
\n可以通过属性 'infoLabelTextColor' 来更改底部提示信息标签的字体颜色。
\n-124C
\n可以通过属性 'infoBottomViewBackgroundColor' 来更改底部提示信息标签容器的背景色。
\n-126C
\n可以通过属性 'placeDetailsViewBackgroundColor' 来更改底部位置信息容器的背景色。
\n-128C
\n可以通过属性 'isBottomInfoViewHidden' 来更改底部提示信息的可见性。
\n-130C
\n可以通过属性 'isBottomPlaceDetailViewHidden' 来更改底部位置信息容器的可见性。
\n-132C
\n可以通过设置地图中心来设置地点选择器的初始位置,但还需设置属性 'isInitializeWithCustomLocation' 为 true。
\n存在一个 ¨-23C 类,它代表一组可以应用于自动完成以控制归因外观(内容长度、大小、水平内容对齐和垂直位置)的设置。可通过 ¨-24C 的不同属性控制归因在外观上的显示。
\n\n¨-134C
\n可以通过设置此属性的不同的值来控制归因的大小。它是枚举类型 ¨-25C 的一个类型。它可以设置为 ¨-26C、¨-27C 或 ¨-28C。默认值为 ¨-29C。
\n¨-135C
\n可以通过设置此属性的不同的值来控制归因内容的水平对齐。它是枚举类型 ¨-30C 类型。它可以设置为 ¨-31C、¨-32C 或 ¨-33C。默认值为 ¨-34C。
\n¨-136C
\n可以通过设置此属性的不同的值来控制归因的位置(在自动完成结果之前或之后)。它是枚举类型 ¨-35C 类型。它可以设置为 ¨-36C 或 ¨-37C。默认值为 ¨-38C。
\n在每个 ¨-39C 类(类型为 ¨-40C)中存在一个属性,在 ¨-41C、¨-42C、¨-43C 和 ¨-44C 中,可以根据不同的场景设置其值。
\n以下是在 ¨-45C 中配置归因外观的代码片段
\n以下是在 ¨-46C 中配置自动完成归因外观的代码片段
\n如有疑问和支持,请联系
\n\n通过以下电子邮箱联系我们 [email protected]
\n支持 有需要支持?联系我们!