首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SFSafariViewController语言未更新

SFSafariViewController语言未更新
EN

Stack Overflow用户
提问于 2017-12-01 15:29:45
回答 1查看 243关注 0票数 0

我正在做一个swift 2.0的项目。该应用程序是两种语言的中文和英文。

我正在使用SFSafariViewController打开url。现在的问题是,当我选择英语时,url加载成功。但我将语言转换为中文,然后SFSafariViewController再次加载相同的英文url。

我已经发送了一个带有url的新参数来设置浏览器中的语言,但这不起作用。对此有何建议?提前谢谢。

编辑:代码

代码语言:javascript
复制
    let language = (Localize.currentLanguage() != "zh-Hans" ? "en" : "zh")
 if language == "zh"{
  let externalURL = ApiURLs.webViewPath + "/?source=ios&lang=zh-CN"

  let safariVC = SFSafariViewController(URL: NSURL(string: externalURL)!)

  self.presentViewController(safariVC, animated: true, completion: nil)

 }
  else
{
   let externalURL = ApiURLs.webViewPath + "/?source=ios&lang=en-US"

   let safariVC = SFSafariViewController(URL: NSURL(string: externalURL)!)

   self.presentViewController(safariVC, animated: true, completion: nil)

 }
EN

回答 1

Stack Overflow用户

发布于 2017-12-01 17:04:32

我猜你创建了一个错误的url

请确保您的ApiURLs.webViewPathhttps://www.iceangelid.net/#/aboutusexternalURL如下所示

代码语言:javascript
复制
let externalURL = ApiURLs.webViewPath + "?source=ios&lang=zh-CN"

如果您打印您的externalURL,那么它应该如下所示

代码语言:javascript
复制
https://www.iceangelid.net/#/aboutus?source=ios&lang=zh-CN

我已经测试了下面的代码,它对我来说工作得很好,下面的代码是swift4的,但导入的是url

代码语言:javascript
复制
if language == "zh" {
  let externalURL = "https://www.iceangelid.net/#/aboutus?source=ios&lang=zh-CN"
  let safariVC = SFSafariViewController(url: URL(string: externalURL)! as URL)
  self.present(safariVC, animated: true, completion: nil)
}
else {
  let externalURL = "https://www.iceangelid.net/#/aboutus?source=ios&lang=en-US"
  let safariVC = SFSafariViewController(url: URL(string: externalURL)! as URL)
  self.present(safariVC, animated: true, completion: nil)
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47588574

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档