Я работаю над локализацией своего приложения, и я заинтересован в том, чтобы «централизовать» все локализуемые строки в моем приложении, предоставляемые из некоторого статического метода: [AppStrings stringWithType: type].iOS Каков правильный способ обработки вложенного текста в приложение программно?
С одной стороны, кажется, что централизованный метод облегчит редактирование локализуемых строк в будущем, но, с другой стороны, сама строка перестает быть читаемой, и мне нужно будет определить множество перечисляемых типов ,
Каков правильный способ локализации строк в большом проекте (более 100 строк для локализации)? Я вставляю NSLocalizedString() в код или пытаюсь каким-то образом централизовать предоставление этих строк?
typedef enum : NSUInteger {
ksCheckingCredentials,
ksError
} kStringType;
+(NSString*)stringWithType:(int)type
{
switch (type) {
case ksCheckingCredentials:
return NSLocalizedString(@"Checking Credentials",
@"Inform the user that credentials check is being performed");
break;
case ksError:
return NSLocalizedString(@"Error",
@"Generic error message to display to the user");
break;
default:
break;
}
}
- или-- ли я просто использовать приведенный ниже код, в 100 различных местах в моем приложении?
self.errorLabel.text = NSLocalizedString(@"Error",@"Generic error message to display to the user");
Круто, определяет, безусловно, лучший путь - я приказываю нажмите на определить макрос идти прямо к ее определению. –