首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在swift中以编程方式更改应用的可本地化字符串文件?

在Swift中,可以通过以下步骤以编程方式更改应用的可本地化字符串文件:

  1. 创建一个名为Localizable.strings的文件,该文件用于存储应用的本地化字符串。可以在项目导航器中的任何位置创建此文件。
  2. 打开Localizable.strings文件,并添加需要本地化的字符串。每个字符串都由键值对组成,其中键是用于访问字符串的标识符,值是相应的本地化文本。例如:
代码语言:txt
复制
"welcome_message" = "Welcome to my app!";
  1. 在代码中,可以使用NSLocalizedString函数来访问本地化字符串。该函数接受两个参数:键和注释。键是在Localizable.strings文件中定义的字符串的标识符,注释是可选的,用于描述该字符串的用途。例如:
代码语言:swift
复制
let welcomeMessage = NSLocalizedString("welcome_message", comment: "Welcome message")
  1. 如果要以编程方式更改应用的可本地化字符串文件,可以使用UserDefaults来修改应用的语言设置。UserDefaults是一个用于存储应用设置和用户首选项的接口。以下是一个示例代码,用于更改应用的语言设置为英语:
代码语言:swift
复制
UserDefaults.standard.set(["en"], forKey: "AppleLanguages")
UserDefaults.standard.synchronize()
  1. 在更改语言设置后,需要重新加载应用的界面,以使新的本地化字符串生效。可以通过重新加载当前视图控制器或重新启动应用来实现。具体的实现方式取决于应用的结构和需求。
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

何在 C# 编程方式将 CSV 转为 Excel XLSX 文件

前言 Microsoft ExcelXLSX格式以及基于文本CSV(逗号分隔值)格式,是数据交换中常见文件格式。应用程序通过实现对这些格式读写支持,可以显著提升性能。...在本文中,小编将为大家介绍如何在Java编程方式将【比特币-美元】市场数据CSV文件转化为XLSX 文件。...WeatherForecastController.cs 文件重命名为 BTCChartController.cs ,当更改文件名时, Visual Studio 将提示您并询问您是否还要更改项目中所有代码引用...这会: 将HttpGet属性 Name更新 为 GetBTC-USDChartWorkbook, 将返回类型更改为 FileContentResult, 注释掉与天气预报相关代码 添加调用GetCsvData...vnd.openxmlformats-officedocument.spreadsheetml.sheet", "BTC_Chart.xlsx"); } } // Get() 运行结果如下所示: 总结 以上就是在C# 编程方式

23010

iOS之深入解析Xcode 13正式版发布40个新特性

二、通用 Xcode 13 包括对 Swift 并发编程原生支持、对 Xcode Cloud 持续集成和交付支持、对 Git 拉取请求集成支持、使用 DocC 在 Swift 框架创建和查看文档能力...,找到要加载 dylib; 十五、本地化 Xcode 现在可以打开 Xcode 本地化目录 (.xcloc) 查看和编辑字符串和其他本地化资产翻译; 新 Use Compiler to Extract... LocalizedStringKey 和 Foundation StringLocalizationKey 准确地提取字符串插值和字符串文字; 添加了对 genstrings 和本地化导入和导出支持...,提取在 Objective-C 代码中使用新 NSLocalizedAttributedString 宏字符串; 导出本地化时,多个本地化错误现在会聚合到一个警报对话框; 在导出进行本地化时...这可以简化您代码并减少提供本地化字符串数量,因为它会自动对本地化字符串进行变形说明复数、语法协议。它适用于英语和西班牙语。

8.8K40
  • 实现模块化应用本地化

    虽然有多种实现方式,我更倾向每个功能(或页面)只包含它所需要本地化字符串,这样可以增加功能可移植性和重用性。...这可以在 Swift完成,通过将所有必需 .lproj 文件和所有需要本地化内容(当前例子只有 Localizable.strings 文件)放在目标文件夹下 - 我习惯是放在父 Resources...现在有两种方式我们可以实现本地化:使新本地化在 app target 可用或启用混合本地化。...在 app target 添加新本地化内容 在 Features Swift启用新本地化一种方式是将它们添加到导入功能 Xcode 项目中。...这意味着没有一个单一真实来源来确定整个 app 支持哪些本地化。这可能会导致一些问题,例如,某个功能有本地化资源内容,而该内容本地化资源还未被应用。在本例,除了删除资源,没有办法隐藏它。

    90220

    iOS字符串本地化(APP 内本地化切换) 、nib本地化、图片本地化

    3.1 APP 内本地化切换 iOS APP 内本地化切换【修订】 3.2 一个语言对应多个字符串资源文件方案 3.3 iOS本地化字符串指定参数顺序(应用:app内多语言切换) iOS...当本地化应用程序需要载入某一资源时,如图像、属性列表、nib文件应用程序会检查用户语言和地区,并查找相匹配本地化文件夹。...如果找到了相应文件夹,就会载入这个文件资源 I、nib& info.plist 本地化 本地化准备 先创建本地化文件夹(zh-Hans.lproj),让应用程序支持对应语言环境,并选择选择当前需要本地化资源..."]; III、字符串本地化 应用场景: iOS APP 内国际化切换 (对话框文字)、 应用名称本地化 3.1 APP 内本地化切换 【iOS APP 内国际化切换】1、字符串本地化...NSLocalizedString提取生成国际化字符串工具; 如果使用NSLocalizedStringFromTable(key, tbl, comment)来获取字符串,资源文件tbl参数作为文件

    1.6K30

    何在 SwiftUI 中使用 AccessibilityCustomContentKey 修饰符

    前言SwiftUI 3 发布了许多新辅助功能 API,我们可以利用这些 API 轻松方式显著提高用户体验。...不需要执行任何操作即可使你 UserView 访问。UserView 内每个文本片段都对辅助技术(VoiceOver和Switch Control)访问。...通常,我们使用不同字体和颜色在视觉上为文本设置优先级,但是如何在辅助技术实现相同影响呢?...accessibilityCustomContent 视图修饰符有三个参数:用于你自定义内容本地化标签,VoiceOver 用于宣布。用于呈现自定义内容本地化标签或字符串值。...,以及根据需要允许用户访问更多详细信息,从而使我们应用程序更具访问性。

    10610

    Swift 周报 第四十一期

    换句话说,专门用于非尽事枚举要求,即添加 @unknown 默认情况,处理未来枚举案例,已从 “Swift 4 警告/Swift 5 错误” 降级为 “Swift 4 运行时陷阱/Swift...正如我们在关于 Swift 6 进展最新帖子宣布那样,我们已经使用即将推出功能标志合并了一些不兼容源代码更改,计划在 Swift 6 默认启用这些标志。...模板(然后仔细阅读,确保我找到了所有的存储属性,因为它们声明实际上可以出现在文件任何地方)。...总的来说,我们学会了如何利用 ContentUnavailableView 用户友好方式显示空状态。...attach visualEffect 视图修饰符时,你需要指定闭包应用所需所有效果。

    23240

    百行代码变十行,苹果SwiftUI可视化编程让开发者惊呼完美

    Swift 是苹果于 2014 年发布全新开发语言,与 Objective-C* 共同运行于 macOS 和 iOS 平台,用于搭建基于苹果平台应用程序。...Swift 设计安全为出发点,以避免各种常见编程错误类别。近年来,这种编程语言热度上升很快,甚至有人呼吁用它来代替 Python,作为 TensorFlow 支持语言。 ?...今天苹果就为 Switf 前端编程插上了翅膀,其最新发布 SwiftUI 是一个基于 Swift 语言、创新而又极为简单用户界面解决方案,各种平台上应用都能用它打造精致用户界面。...这种声明式方式甚至允许使用复杂功能,动画(animation)。只需要几行代码,即可添加动画在任何控件上,并且可以使用易于调用特效。...单机打开检查器(inspector)选择字体、颜色、对齐方式和其它设计选项,我们也可以通过光标轻松重新排列控件。

    4.1K10

    在多包项目中统一管理资源

    SPM 本身提供了对包各类资源( 包括本地化资源 )管理能力,但主要局限于在本包中使用这些资源,难以将资源进行共享。在有多个 Target 均需调用同一资源情况下,原有的方式很难应对。...每个 Feature 基本上可以被视作一个独立运行应用( 在注入所需环境后 )。...,通过使用相对路径方式,可以在各自 Resources 目录中导入共用资源,这样虽然可以避免上述更新不同步情况,但仍需面对两个问题:每个模块中都有重复资源,应用尺寸将增大模块与资源文件之间耦合度增加...,不利于用多个仓库来分别管理总之,最好能有一种方式可以做到:资源与模块和 Xcode 项目之间低耦合度可以统一管理资源,不会出现不同步在最终应用只需要保留一份资源拷贝,不会造成存储浪费思路Bundle...这个结构不仅允许预测性地加载代码和资源,同时也支持类似于本地化这样系统性特性。Bundle 在存储上目录形式存在,在代码则需要通过 Foundation 框架 Bundle 类来体现。

    1.5K20

    Ask Apple 2022 与 Core Data 有关问答 (下)

    主程序与扩展程序数据同步Q:我有一个主应用程序和一个扩展程序,它们都读取相同 Core Data 数据库。但是,当我在主应用程序中进行更改时,我扩展程序在重新启动之前不会看到更改。...如果用户在应用程序之外删除文档,例如在 Finder ,我希望 Spotlight 索引与它一起被删除。所以我想如果索引可以存储在包文件,那就可以解决这种情况。有没有办法正确处理这种情况?...通过创建两个单独属性,一个包含纯文本字符串,另一个包含属性字符串 Transformable 数据是否为最好方法?是否有另一种更好方式可以不通过两个属性来减少存储数据量?...在早期 Xcode 版本,使用 Class 模式会生成两个文件,xxx+CoreDataClass.swift 和 xxx+CoreDataProperties.swift 。...遗憾是,监控变化并不包括关系对象属性值变化。通过谓词重新获取关系对象列表可能是目前最好方式

    3.2K20

    SwiftUI WWDC作为开发者我最激动部分

    用户喜欢苹果生态系统所有方面,比如控件和特定于平台体验,都可以在代码很好地表现出来。SwiftUI是真正本地应用程序, ?...自动支持动态类型、暗模式、本地化访问性意味着您第一行SwiftUI代码已经是您编写过最强大UI代码。 ?...在运行时,系统会处理创建平滑移动所需所有步骤,甚至会处理中断保持应用程序稳定。有了这个简单动画,你将寻找新方法使你应用程序活起来。...当您在设计画布工作时,您编辑所有内容都与相邻编辑器代码完全同步。当您键入时,代码作为预览立即可见,并且您对该预览所做任何更改都会立即出现在您代码。...Xcode会立即重新编译您更改,并将其插入到您应用程序运行版本,随时可见和可编辑。 ? 如何去学习SwiftUI ----

    2.3K30

    Apple 营收有望再创新高 | Swift 周报 issue 47

    #proposed-solution2) 讨论从本地 HTML 文件创建属性字符串内容大概用户尝试在 Mac 应用程序临时目录显示来自 HTML 文件和 CSS 文件属性字符串。...当然,可能已经有一些方法可以通过属性包装器或其他方式swift 实现弱数组。 然而,要在 swift 轻松完成此操作语法可能需要在添加之前进行一些修改。...用户在特定情况下希望自定义字符串插值行为,特别是在本地化字符串上下文中。 他们提供了一个示例,其中使用可变大小写字符串插值动态构造本地化字符串键。...该摘要捕获了用户对 appendLiteral 正确使用以及他们在 Swift 本地化字符串键自定义字符串插值具体情况询问。...支持 OpenAPI 规范版本 3.0 和 3.1 ,提供更灵活抽象方式,使开发人员能够 API 优先方式进行服务器开发。

    13632

    WWV 2018年十大必看视频

    Apple还在App Store上提供了快捷方式应用程序,供用户创建自己快捷方式。 注意:要了解有关Swift 4.2更多信息,请查看Swift 4.2新功能?...在示例应用程序,Soup Chef,Apple演示了如何对快捷方式进行分类,然后添加一些参数,字符串,数字,人物或位置。一旦捐赠给Siri,您可以通过说出您提供短语来触发快捷方式。...条件一致性扩展或增加了符合它协议和类型可组合性。 Swift还支持面向对象编程。...另一个高级技巧涉及执行线程 - 谨慎,因为您可以更改应用程序状态。p是另一个LLDB命令,用于查看当前对象调试表示。在暂停时使用“变量调试器”,可以查看和过滤属性查找要检查项目。...专业提示:查看“最近”过滤器查看先前构建中内容。此外,查找阶段脚本执行 - 如果每个构建都存在这些,“最近”中所示,那么您很可能遇到配置问题。 在您代码,尝试减少复杂表达式。

    2.8K20

    WWDC 2018年十大视频评论

    Apple还在App Store上提供了快捷方式应用程序,供用户创建自己快捷方式。 注意:要了解有关Swift 4.2更多信息,请查看Swift 4.2新功能?...在示例应用程序,Soup Chef,Apple演示了如何对快捷方式进行分类,然后添加一些参数,字符串,数字,人物或位置。一旦捐赠给Siri,您可以通过说出您提供短语来触发快捷方式。...条件一致性扩展或增加了符合它协议和类型可组合性。 Swift还支持面向对象编程。...花药高级技巧涉及执行线程 - 谨慎,因为您可以更改应用程序状态。p是另一个LLDB命令,用于查看当前对象调试表示。在暂停时使用“变量调试器”,可以查看和过滤属性查找要检查项目。...专业提示:查看“最近”过滤器查看先前构建中内容。此外,查找阶段脚本执行 - 如果每个构建都存在这些,“最近”中所示,那么您很可能遇到配置问题。 在您代码,尝试减少复杂表达式。

    3.3K20

    macOS 应用开发流程

    交互设计: 定义用户与应用程序交互方式,确保操作流畅。2.开发环境搭建Xcode安装: Xcode 是苹果官方提供集成开发环境,是 macOS 开发必备工具。...配置项目: 创建新 Xcode 项目,配置项目的基本信息,产品名称、组织标识符等。3.代码编写选择语言: macOS 应用主要使用 Swift 或 Objective-C 语言开发。...实现逻辑: 编写代码实现应用程序功能,包括数据处理、网络请求、文件操作等。4.调试与测试Xcode调试器: 利用 Xcode 调试器,设置断点、单步执行等,查找并修复代码错误。...本地化: 如果需要支持多种语言,进行本地化处理。6.打包与分发打包: 使用 Xcode 打包应用程序,生成可执行文件。...总结macOS 桌面应用开发是一个综合性过程,涉及多个方面。开发者需要掌握 Xcode 使用、Swift 或 Objective-C 编程语言、Cocoa 框架等知识。

    7710

    Swift 周报 第二十一期

    @UIApplicationMain 和 @NSApplicationMain 曾经是 iOS 和 macOS 应用程序分别为应用程序声明合成平台特定入口点标准方式。...性能预测性:Swift 提供了一种富有表现力相当高级编程模型,可以抽象掉不必要细节。...Swift 6 可以考虑更改默认语言语义提高性能预测性,例如通过调整有关变量生命周期规则,使某些带有运行时成本功能选择加入而不是选择退出,或调整类型推断规则以启用 一个性能更好类型检查器实现。...然而,对于许多 API 来说,这是一个问题,特别是标准库设施,打印和相关字符串化功能,旨在尽最大努力处理任何值。...反射。如果 Reflectable 是一个标记协议,那么它如何在完全通用情况下工作还不清楚,因为尽管我们可能静态地将表达式 x 识别为?反射,不可能将 x 处理为?

    2.1K20

    基于 Go 语言开发在线论坛(八):消息、视图及日期时间本地化

    我们接着上篇在线论坛进度,由于之前所有页面和消息文本都是英文,而我们开发应用基本都是面向中文用户,所以需要对项目进行本地化,今天正好借着这个入门项目给大家介绍下如何在 Go Web 应用中进行国际化和本地化编程...1、消息本地化 安装 go-i18n 扩展包 首先来看消息提示文本,消息提示文本通常包括表单验证消息、应用异常消息、接口响应消息等后端接口返回消息字符串片段,关于这一块本地化,可以借助 Go 官方自带...自动生成 active.en.json 翻译文件 编写中文版本翻译文件 然后,要进行本地化编程,可以在同级目录下创建并编辑 active.zh.json 用于存放消息文本中文翻译: ?...HTML 视图模板本地化,这里就不再适合使用消息文本翻译方式实现了,最简单方式就是为每个语言创建独立视图模板进行本地化,然后在应用代码通过读取全局配置、用户手动选择、客户端参数(比如 HTML...请求头中 Accept-Language 字段)、或者域名信息来判断加载那种语言本地化视图模板,为了简化演示流程,这里我们使用全局配置方式,也就是我们上面配置文件设置 Language 字段

    2K20

    可视化编程,自动化减少20%代码量

    来源:Github等 编辑:鹏飞 本文转自公众号:新智元 【导读】SwiftUI是为Apple平台创建用户界面的现代化框架,以前所未有的速度创建漂亮、动态应用程序。...开发者通过SwiftUI,利用Swift语法就能够完成代码和设计同步。 Swift是苹果最新开发语言,有人呼吁谷歌取代TensorFlowPython。目前在TOIBE排名18位: ?...SwiftUI还提供对动态类型、暗黑模式、本地化访问性自动支持。 SwiftUI都更新了什么? 此次更新主要有5点: 声明式:更加易读代码。...而SwiftUI通过4种方式,解决了上述问题: 用一个新声明式UI结构,定义了布局外观和工作方式 更新UI预览会自动生成新Swift代码,反之,更改Swift代码也会更新UI预览 Swift任何绑定例如有效...人人都能编程 SwiftUI继承了Swift理念:每个人都可以编程。现在,一个全新用户界面系统诞生,有助于避免新开发人员遇到大量问题。

    5.4K20

    苹果突然不造车了,马斯克或是最大赢家| Swift 周报 issue 48

    内容大概讨论围绕识别 .swiftinterface 文件声明并将其与其原始声明关联起来,主要是为了提取有关 Swift @_spi 属性信息。...5) 讨论在整个应用程序中共享变量?内容大概这篇文章讨论了 Swift 应用程序全局变量使用,特别是在多个视图之间共享数据。...文章 Franz Boas 在 1911 年观察为引子,指出不同语言对于相同概念命名方式可能存在差异,从而呈现出语言相对性现象。...文章还介绍了未来可能出现一些发展趋势,原始字符串字面量和通过强制执行字面初始化,以及它们对 Swift 语言和开发者影响。...最后,强调了编程语言中词汇选择对开发者思维方式和代码编写方式影响,鼓励开发者利用 Swift 提供特性使代码更加自然和高效。

    12732

    Flutter 旋转轮

    在在本文中,我们将探讨 “Flutter 旋转轮”。我们还将在flutter应用程序中使用「flutter_spinwheel」包来实现带有自定义选项「Spinwheel」演示程序。...它显示了如何在flutter应用程序中使用「flutter_spinwheel」软件包运行「旋转轮」,并显示了当您点击该项目时,旋转器将移动。同样,您将沿顺时针/逆时针任何方向移动微调器。...**hideOthers:**此属性用于确定是否应绘制快门隐藏除选定以外所有选项。 **shutterPaint:**如果适用,此属性用于绘制用于绘制快门设置。此外,它是定制。...,我们将创建一个由名称给定字符串两个列表,称为问题和答案。...当我们运行应用程序时,我们应该获得屏幕输出,屏幕下方截图所示。

    8.8K20
    领券