2013-11-21 21 views
3

我有很多麻烦添加到我的Root.plist子窗格中。 我见过同样的问题HERE,但我无法用这些答案解决它。 对不起,重复类似的问题。添加第二个.plist作为子窗格

这是Root.plist的捕获: Root.plist

这里是Connection.plist的捕获: Connection.plist

我做什么,一步一步是:

1。 - 创建一个名为“Connection.plist”的新的属性列表

2.-由于新的属性列表超出了我的Settings.bundle,所以我添加它,因为我见过HERE。 (注意:我也试过没有第二步,我的意思是,在Settings.bundle的属性列表中)。

3.-编辑Root.plist添加一个类型为“子窗格”和文件名“连接”的新项目。

就这些,我认为这些步骤应该已经奏效,但我看不到新的属性列表。这就像是如果Root.plist不承认Connection.plist ...

我不知道我做错了什么,我跟着很多教程和视频教程...没有任何工作。 ..

非常感谢! 干杯,豪尔赫。

+0

更多的了解这个流程链接https://developer.apple.com/library/ios/documentation/cocoa/Conceptual/UserDefaults/Preferences/Preferences。 html – codercat

回答

7

我发现在设置包中本地化您的第二个子窗格plist文件的唯一方法是手动完成。

我刚才测试了这一点,它的工作原理:

当您打开在Finder中Settings.bundle,在每个文件夹language.lproj,使Root.strings文件的副本,并将其重命名为NewInfo.strings(例如)。

一旦你有了这个,你应该在Xcode中看到你的设置包中有这些新的字符串文件。

现在在您的NewInfo.plist文件中,确保您有一个名为StringsTable的字段并将其值设置为NewInfo(或任何您称为新的字符串文件的值)。

我刚才在Xcode 4.2测试了这个和定位完美的作品:

这里就是我添加了一个“TEST”排开子窗格中的Root.plist的屏幕截图。注意其他NewInfo.plist和相关的字符串在正确的lang.lproj文件夹中(再次,我把它们手动放在Finder中)。

enter image description here 现在这里是NewInfo.plist与StringsTable关键字对应的关联。字符串的文件名:

enter image description here

以下是FR和EN字符串文件的值:

enter image description here

enter image description here

而且在两个FR模拟器生成的设置页面和EN,表明本地化工作:

enter image description here

enter image description here

enter image description here

enter image description here

+0

谢谢!我需要将Connection.plist中的“字符串文件名”从“根”更改为“连接”。 – kemmitorz