gpt4 book ai didi

objective-c - 可以在 NSLocalizedString 中使用变量和/或参数吗?

转载 作者:IT老高 更新时间:2023-10-28 11:29:29 26 4
gpt4 key购买 nike

我尝试使用变量作为 NSLocalizedString 的输入参数,但我得到的只是输入参数。我究竟做错了什么?是否可以使用可变字符串值作为 NSLocalized 字符串的索引?

例如,我有一些字符串希望显示本地化版本。但是,我想使用一个变量作为 NSLocalizedString 的参数,而不是一个常量字符串。同样,我想在 NSLocalizedString 的参数中包含格式化元素,这样我就可以使用相同的格式化参数检索字符串的本地化版本。我可以执行以下操作吗:

案例 1:变量 NSLocalizedstring:

NSString *varStr = @"Index1";
NSString *string1 = NSLocalizedString(varStr,@"");

案例 2:格式化的 NSLocalizedString:

NSString *string1 = [NSString stringWithFormat:NSLocalizedString(@"This is an %@",@""),@"Apple"];

(请注意,变量可以包含任何内容,而不仅仅是一组固定的字符串。)

谢谢!

最佳答案

如果您想要返回“This is an Apple/Orange/whatever”的本地化版本,您会想要:

NSString *localizedVersion = NSLocalizedString(([NSString stringWithFormat:@"This is an %@", @"Apple"]), nil);

(即 NSLocalizedString()[NSString stringWithFormat:] 的嵌套是相反的。)

如果您想要的是要本地化的 格式,而不是替换的值,请执行以下操作:

NSString *finalString = [NSString stringWithFormat:NSLocalizedString(@"SomeFormat", nil), @"Apple"];

在你的 Localizable.strings 中:

SomeFormat = "This is an %@";

关于objective-c - 可以在 NSLocalizedString 中使用变量和/或参数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3445917/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com