Iphone 您能否以编程方式访问Cocoa Touch中的标准本地化字符串?
一些iOS控件使用苹果内置的本地化字符串。“完成”、“编辑”、“返回栏”按钮项就是一些示例。有没有办法访问这些字符串 我正在制作带有标准删除或取消选项的UIActionSheet,就像在Contacts应用程序中删除联系人一样Iphone 您能否以编程方式访问Cocoa Touch中的标准本地化字符串?,iphone,ios,localization,Iphone,Ios,Localization,一些iOS控件使用苹果内置的本地化字符串。“完成”、“编辑”、“返回栏”按钮项就是一些示例。有没有办法访问这些字符串 我正在制作带有标准删除或取消选项的UIActionSheet,就像在Contacts应用程序中删除联系人一样 有没有办法在代码中引用这些字符串?如果没有,我至少可以从苹果应用程序的资源中提取这些字符串吗?它将节省额外的本地化工作,并确保与平台的一致性。如果iOS和Mac OS一样,每个应用程序都有自己的Localizable.strings文件。 在每一个字符串文件中都有一些小字
有没有办法在代码中引用这些字符串?如果没有,我至少可以从苹果应用程序的资源中提取这些字符串吗?它将节省额外的本地化工作,并确保与平台的一致性。如果iOS和Mac OS一样,每个应用程序都有自己的Localizable.strings文件。 在每一个字符串文件中都有一些小字符串,比如Done、Edit、Cancel等等 以下是我从Finder.app的English Localizable.string文件中复制的一些字符串:
<key>AL1</key>
<string>Cancel</string>
<key>AL4</key>
<string>OK</string>
<key>AL9</key>
<string>Don’t Save</string>
<key>FF24</key>
<string>Save</string>
<key>U32</key>
<string>Yes</string>
<key>U33</key>
<string>No</string>
看起来更有条理。不过,可能不允许复制他们的文件-
来自苹果开发者关系部的Quinn eskimo1的一份报告
一些UI元素会自动为您本地化。例如,在一个维吾尔布托民族上的艺术品。但是,由于在UIActionSheet中使用了OK和Cancel等字符串,因此没有支持的方法来访问它们。然而,它们对于您的本地用户来说应该是微不足道的
2岁。但新线程也有同样的结果。没有办法得到那些字符串 可以使用以下代码段从UIKit包访问本地化字符串:
static NSString * UIKitLocalizedString(NSString *string)
{
NSBundle *UIKitBundle = [NSBundle bundleForClass:[UIApplication class]];
return UIKitBundle ? [UIKitBundle localizedStringForKey:string value:string table:nil] : string;
}
全部归功于
static NSString * UIKitLocalizedString(NSString *string)
{
NSBundle *UIKitBundle = [NSBundle bundleForClass:[UIApplication class]];
return UIKitBundle ? [UIKitBundle localizedStringForKey:string value:string table:nil] : string;
}