问题标签 [clplacemark]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 如何本地化国际地址,尤其是大道和次大道
我正在开发一个大量使用不同国家地址的应用程序。我们有很多方法可以输入它们,从导入地址到在地图上放置图钉,再到反向地理编码我们当前的位置。
我目前的项目是正确格式化国际地址:
在美国:
18 Street Name
在挪威:
Street Name 18
我已经想出了很多方法来实例化CNMutablePostalAddress
以CLPlacemark
获得一些很好的结果,我遇到的问题就是这个。
我只想将街道名称和号码作为单行字符串返回:所以:
street1: placemarker.thoroughfare, (street name)
street2: placemarker.subThoroughfare (street number),
但是 CNPostalAddress 只有一个street
属性,因此要使用它,您需要执行以下操作:
cNPostalAddress.street = placemarker.subThoroughfare + " " + placemarker.thoroughfare
这不适用于像挪威这样受人尊敬的国家。
您可以破解它并使用格式化地址中的第一行:
CNPostalAddressFormatter.string(from: placemarker.mailingAddress , style: .mailingAddress)
但这太老套了,我相信它会与像日本这样以不同方式订购邮寄地址的国家/地区决裂。
目前,我什至找不到任何资源可以告诉我哪些国家反转了subThoroughfare
,thoroughfare
因为如果我有这样的列表,我可以手动反转它。
这是我迄今为止管理的一些示例代码:
有任何想法吗?甚至像国家名单这样的资源也可以逆转street1
并且street2
很有用。
ios - Swift 5 reverseGeocodeLocation() 导致不推荐使用的 addressDictionary
我正在使用一个CLGeoCoder
实例通过它的方法来获取一组给定坐标(纬度和经度)的城市和国家reverseGeocodeLocation()
。
该文档指定此数据应位于CLPlacemark
'scountry
和locality
属性中,但结果似乎仅位于addressDictionary
自 iOS 11 以来已弃用的属性内部。
调试实例的图像显示 addressDictionary 存在但既不国家也不地区
因此,这有效,但在以下所有三种用途中显示此警告addressDictionary
:
'addressDictionary' was deprecated in iOS 11.0: Use @properties
我尝试引用属性,但它们只返回 nil 值。
我调用了错误的方法还是这是一个错误?
swift - SwiftUI - 获取用户坐标以传递 API 调用
这个问题已经困扰我好几个月了,我相信它归结为我使用了错误的结构和程序。
我正在尝试对 Yelp 的 API 进行 API 调用,并为用户的纬度/经度传递变量。我能够根据我当前的 LocationManager 获取纬度/经度,但是当似乎纬度/经度似乎仅在 API 调用之后才可用时,因此 API 获取纬度/经度的默认值 0.0 .
在这方面我是一个初学者,但是有没有办法可以设置一个加载屏幕,在背景中抓取纬度/经度,当我的 ExploreView 显示时,已经建立了真实的位置信息?
下面是我的 LocationManager 和 ExploreView
位置管理器
ExploreView(启动时显示的第一个视图)
ios - 使用 coreData 作为数据类型读取时出现问题具有 CLPlacemark
我有一个名为 Places 的实体和一个可转换的属性(placeMark)。当我关闭应用程序并重新启动它时遇到问题,它查询 CoreData 并且记录在那里,但是每个地方的时间戳完全相同。
**写入CoreData的代码**
一旦我得到一个位置(ClLocation),我就可以存储、擦除我的上下文并读回时间(不同的时间戳)。我使用下面的代码来读取数据库。
**从 CoreData 读取的核心 **
我尝试存储一个地标,然后我清除我的缓冲区并读取它并没问题(我可以看到两个具有不同时间戳的地方),但是一旦再次启动应用程序,我就可以读取以读取两个地标,但它们有相同的时间戳。
任何帮助,将不胜感激!
swift - Swift CLGeocoder 获取 TimeZone
恐怕我可能把完成处理程序都搞砸了。我想要做的是使用纬度和经度来获得时区。我希望整个函数返回 TimeZone 类型的值。以下代码有效,因为我可以获得正确的 timeZone 但它在返回阶段分崩离析。