我已经尝试过本地化并遵循" This"指导几个月前。然后继续开发而不跟上其他故事板(即添加到基础而不支持让我们说西班牙语故事板)。 因此,当定义了具有西班牙语界面的iPhone时,我的应用程序会崩溃,因为它正在寻找西班牙语故事板,
我回到项目的属性删除了使用国际化以及删除(使用 - )西班牙语
因此我的故事板从解决方案中消失了,当语言被定义为西班牙语时,应用程序仍然崩溃。
我的问题:
感谢。
答案 0 :(得分:0)
是的,您可以使用一个故事板来处理本地化。
首先,您应该创建一个用于本地化字符串的宏:
#define NSLocalizedString(key, comment) [[NSBundle mainBundle] localizedStringForKey:(key) value:@"" table:nil]
然后,您可以在要本地化的每个UI元素上创建一个类别。例如,对于UILabel,您可以创建:
UILabel+Localization.h
#import <UIKit/UIKit.h>
@interface UILabel (Localization)
@end
和
UILabel+Localization.m
#import "UILabel+Localization.h"
@implementation UILabel (Localization)
-(void)setLocalizeKey:(NSString*)key {
self.text = NSLocalizedString(key, nil);
}
@end
之后,在UIStoryboard中选择要本地化的元素,并在身份检查器中添加将设置本地化密钥的用户定义的运行时属性: