You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iOS开发如何复用Main.strings已有本地化字符串为新控件赋值

结论

完全可以通过读取Main.strings中已有的字符串赋值给新标签,你提到的nuq-zS-uwp是Storyboard中oldLabel对应的Object ID,.text是该控件文本属性对应的后缀,直接以nuq-zS-uwp.text作为key读取本地化表即可。

实现代码

Swift 版本

// 指定table为Main,对应Main.storyboard的本地化字符串文件Main.strings
newLabel.text = Bundle.main.localizedString(forKey: "nuq-zS-uwp.text", value: nil, table: "Main")

Objective-C 版本

newLabel.text = [[NSBundle mainBundle] localizedStringForKey:@"nuq-zS-uwp.text" value:nil table:@"Main"];

注意事项

  • 不要修改oldLabel在Storyboard中的Object ID,否则key失效会导致读取不到对应文本
  • 后续更新oldLabel的本地化文本时,newLabel的文本会同步更新,无需额外修改代码
  • 长期维护更推荐把公共复用的本地化字符串提取到Localizable.strings统一管理,两个控件都用同一个自定义key读取,避免依赖Storyboard自动生成的随机Object ID

内容的提问来源于stack exchange,提问作者tech_human

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 20:39:05