Swift Reverse Geocoding всегда получает название штата на одном языке - PullRequest
0 голосов
/ 10 марта 2019

Мне нужно получить название штата, в котором находится пользователь.Для этого я создал следующий метод:

func getState(){
    if location != nil{
        CLGeocoder().reverseGeocodeLocation(location)
        { (placemarks, error) -> Void in

            if error != nil {}
            else
            {
                let pm = CLPlacemark(placemark: placemarks![0] as CLPlacemark)

                var subThoroughtare:String = ""
                var thoroughfare:String = ""
                var subLocality:String = ""
                var subAdministrativeArea:String = ""
                var postalCode:String = ""
                var country:String = ""

                if pm.subThoroughfare != nil {subThoroughtare = pm.subThoroughfare!}
                if pm.thoroughfare != nil {thoroughfare = pm.thoroughfare!}
                if pm.subLocality != nil {subLocality = pm.subLocality!}
                if pm.subAdministrativeArea != nil {subAdministrativeArea = pm.subAdministrativeArea!}
                if pm.postalCode != nil {postalCode = pm.postalCode!}
                if pm.country != nil {country = pm.country!}
                let state = pm.administrativeArea;

                self.filterDataSet(state: state!)
            }
        }
    }
}

Проблема в том, что название штата всегда на языке телефонов, но оно мне нужно на английском.Как я могу установить его на английский по умолчанию

1 Ответ

1 голос
/ 10 марта 2019

Существует вариант CLGeocoder.reverseGeocodeLocation(), который принимает параметр preferredLocale.Попробуйте перейти на американский английский в качестве локали.Это должно сделать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...