Нет проблем с вызовом NSLocalizedString
, скорее, с определением в вашем Localizable.strings файле.
Поскольку вы определяете переменную Value
как «атрибуты», именно это функция будет использовать в качестве ключа для поиска правильной локализованной строки.
Это должно работать правильно:
//Viewcontroller.m code
NSString *Value=@"attributes"
NSLocalizedString(Value,@"Attribute Name");
//Localizable.string code
"attributes"="Value-french";
Я тестировал подобный код в Swift, который затем выглядел так:
//Viewcontroller.swift code
let Value="attributes"
NSLocalizedString(Value, comment:"Attribute Name")
//Localizable.string code
"attributes"="Value-french"; // <- don't forget the semicolon!