iOS:在iOS应用程序开发中的strings.xml等效?

Kar*_*oro 5 ios

在我正在制作的应用程序中,我有很多大字符串.我不想将这些代码硬编码到我的代码中,因为它会让代码难以忍受.当我制作类似的Android应用程序时,将strings.xml中的字符串声明为一个简单的问题

<string name="hello_world">Hello World!!</string>
Run Code Online (Sandbox Code Playgroud)

并使用.在java文件中访问它

getString(R.string.hello_world);
Run Code Online (Sandbox Code Playgroud)

我怎么能用iOS做这样的事情?

tro*_*foe 6

您可以将它们放入一个.plist文件中并使用以下代码加载它们(假设一个名为strings.plist已复制到应用程序包中的文件):

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"strings" ofType:@"plist"];
NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:filePath];
NSString *string1 = [dict objectForKey:@"string1"];
Run Code Online (Sandbox Code Playgroud)

但是,如果您想要使您的应用程序国际化,那么可能需要使用Apple的国际化和本地化技术.

编辑:您只想加载一次该文件/字典,并将其保存在整个应用程序生命周期内; 不要为每个字符串访问使用上面的代码!