GMSGeocoder - 如何设置响应语言

2024-01-03

在国外使用我的应用程序时,谷歌GMSGeocoder自动以本地语言返回响应。我怎样才能将其设置为始终返回英文响应?

我使用 GMS SDK 1.7,我的代码是这样的:

GMSGeocoder *geoCoder = [[GMSGeocoder alloc] init];


[geoCoder reverseGeocodeCoordinate:self.cellLocation.coordinate completionHandler:^(GMSReverseGeocodeResponse *respones, NSError *err) {
    if([respones firstResult]) {

        GMSAddress* address = [respones firstResult];
        NSString* fullAddress = [NSString stringWithFormat:@"%@, %@",address.thoroughfare, address.locality];

        self.theTextField.text = fullAddress; 

    } else {
        self.theTextField.text = @"";
    }
}];

受到 @DaNLtR 的启发,使用 GMSGeocoder 类别可以解决这个问题 之后,它可以将地理编码结果设置为英文。

@implementation GMSGeocoder (Load)

+(void)load {
    [[self class] setUserLanguage:@"en-CN"];// set your wanted language.
    NSLog(@"GMSGeocoder + load!");
}
- (void)dealloc {
    [[self class] resetSystemLanguage];
    NSLog(@"GMSGeocoder + dealloc!");
}
+ (void)setUserLanguage:(NSString *)userLanguage
{

    if (!userLanguage.length) {
        [[self class] resetSystemLanguage];
        return;
    }

    [[NSUserDefaults standardUserDefaults] setValue:userLanguage forKey:@"UserLanguage"];
    [[NSUserDefaults standardUserDefaults] setValue:@[userLanguage] forKey:@"AppleLanguages"];
    [[NSUserDefaults standardUserDefaults] synchronize]; 
}

+ (void)resetSystemLanguage
{
    [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"UserLanguage"];
    [[NSUserDefaults standardUserDefaults] setValue:nil forKey:@"AppleLanguages"];
    [[NSUserDefaults standardUserDefaults] synchronize];
}
@end

为什么要在类别中?

A:我测试了setLanguage:在GMSGeocoder的reverseGeocodeCooperative方法之前,它不会影响地理编码器的结果。在我看到DaNLtR的回答后,我认为我们可以在load方法中setLanguge。

为什么要重置语言?

A:避免影响其他模块或框架。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GMSGeocoder - 如何设置响应语言 的相关文章

随机推荐

  • PHP:“即时”向电子邮件添加附件?

    我刚刚让PHP的邮件功能在我的测试环境中正常工作 我有一个输出许多字符串的 PHP 应用程序 将这些字符串转换为附件真是太好了 TXT 文件 在电子邮件中 无需先将它们存储在磁盘上并重新读回 这在 PHP 中可能吗 是的 这是可能的 您只需
  • 包含任何内容 ([_]) 和任何内容 (_) 的列表有什么区别

    我试图完成以下任务 如果我有两个列表 L1 和 L2 我希望结果 R 是 L1 中 L2 的 减法 Example L1 1 2 3 L2 2 3 4 5 R 1 我能够做到这一点 但我不知道两者之间有什么区别 and 如果我这样做 dif
  • 在 R 中的点阵图例图中包含线和点

    大家好 我正在处理格子图 一切正常 但我在图例方面遇到了一些麻烦 我在用xyplot 而且效果非常棒 我的数据框是NM I add dput 最后部分的版本 AMes A2009 A2010 A2011 A2012 A2013 A2014
  • 开关参数和powershell.exe -File参数

    据微软称 在极少数情况下 您可能需要为开关参数提供布尔值 要为 File 参数值中的开关参数提供布尔值 请将参数名称和值括在大括号中 如下所示 File Get Script ps1 All False 我有一个简单的脚本 CmdletBi
  • 如何使用 dask 和特定 AWS 配置文件从 s3 读取镶木地板文件

    如何使用 s3 读取 parquet 文件dask以及特定的 AWS 配置文件 存储在凭证文件中 达斯克用途s3fs它使用boto 这是我尝试过的 gt gt gt import os gt gt gt import s3fs gt gt
  • CakePHP - $hasMany 模型中的订单被忽略

    我有一个具有 hasMany 属性的模型 如果我只有以下内容 var hasMany OtherModel 在 OtherModel 扩展 AppModel 类中 我有以下内容 var order colour id DESC 该顺序被忽略
  • 一个域名有可能有多个对应的IP地址吗?

    例如 当我们连接到www example com 首先我们尝试连接到192 0 2 1 如果第一次尝试失败 那么我们会尝试192 0 2 222 是否可以 一个域名可以注册多个备份IP吗 这是循环 DNS 这是一个非常简单的负载平衡解决方案
  • 是否可以使用 BeautifulSoup 只获取没有类或 id 的标签?

    我有数千个 HTML 网站 我正在尝试过滤这些网站中的文本 我正在用漂亮的汤来做这个 get text 从这些网站给我提供了很多不必要的信息 因此我写了一个循环 l for line in text5 soup bs line html p
  • Excel 宏一次将一行连接到文件末尾

    我需要一个 Excel 宏来连接每行的七列数据 直到到达数据末尾 例如 如果我有这样的公式 A1 B1 C1 D1 E1 F1 G1 如何编写宏 以便它按这样的顺序递增到文件末尾的每一行 A1 B1 C1 D1 E1 F1 G1 A2 B2
  • 为什么 Swift 迭代器比数组构建慢?

    这有点与这个问题 https stackoverflow com questions 40669193 explain swift iterators 40672317 40672317 其中假设使用生成器 迭代器 遍历嵌套数组对于迭代元素
  • 创建的参数化查询未显示在数据源 Visual Studio 10 和访问中

    我正在尝试复制northwind数据库但是当我创建参数查询时vw CustomerOrderYear 查询未显示在我的数据源中 我不知道我错过了什么 我的参数查询vw CustomerOrderYear is PARAMETERS Orde
  • 将 Sharepoint TimeZone 信息转换为 Java TimeZone

    我希望将 Sharepoint TimeZone 信息转换为 Java TimeZone 对象 以便与使用 Sharepoint REST API 的应用程序一起使用 据我所知 Sharepoint 以 UTC 格式存储所有时间戳 但是在使
  • 函数必需和非必需变量

    在 PHP 中 我们可以在函数中指定变量的默认值 例如 function myFunction myDefaultVariable myOtherVariable myCheckVariable basic so yeah myDefaul
  • java中的图像比较[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在做我的大学项目 其中需要我进行指纹比较 这可以通过比较两个图像并匹配它们的像素相似性来完成 根据
  • 在 C# 中使用 fo-dicom 操作和转换 CT 图像的像素数据

    对于一些测试 我试图操纵PixelData以 dicom 格式存储的 CT 图像的元素 并将其写回到文件中橡树迪康研究员在 C 中 经过一番研究 我发现我想要处理的矩阵位于Buffer of PixelData存储在一个byte 大批 所以
  • 有没有办法通过先前定义的 Sequelize 模型获取属性 // 关联?

    我需要通过之前定义的 Sequelize 模型获取一些数据 我需要的 attributes list attribute name attribute type INTEGER STRING was it generated by asso
  • 使用 Google API 和 JSON 检索股票信息

    我正在开发一个 dB 每天多次从 Google 财经中提取股票数据 起初我只是提取数据并保存为 CSV 文件 如下所示 Public Sub GrabQuotes Dim oXMLHTTP Dim oStream Set oXMLHTTP
  • 如何在 Apache POI Word 中创建超链接?

    如何使用 apache poi 在 Word 文档中创建超链接 是否可以使用相对路径 有XWPF超链接运行 https poi apache org apidocs org apache poi xwpf usermodel XWPFHyp
  • 如何使用 UIViewControllerRepresentable 在 SwiftUI 中呈现 UICollectionView

    首先 我知道可以选择使用 SwiftUI 列表等来获得类似的效果 但我需要 UICollectionView 的自动滚动功能 所以我真的很想实现一个 老派 版本 我什至不想要理想的构图布局版本 我当前的代码如下所示 import Swift
  • GMSGeocoder - 如何设置响应语言

    在国外使用我的应用程序时 谷歌GMSGeocoder自动以本地语言返回响应 我怎样才能将其设置为始终返回英文响应 我使用 GMS SDK 1 7 我的代码是这样的 GMSGeocoder geoCoder GMSGeocoder alloc