本地化(也有類似的問題,有些導致,我試過的答案,發現不工作,其他人沒有得到迴應,我想是因爲querents沒有供應儘可能多的細節,我要)故事板+基地+本地化文件.strings不會在運行時
我開始與我的應用程序正常工作的故事板。它包含的字符串是英文的。我想添加法語本地化。我這樣做:
- 加入鹼國產化,其傳輸
MainStoryboard.storyboard
從en.lproj
到Base.lproj
。 - 添加了法國本地化,將
InfoPlist.strings
(英文) 和MainStoryboard.storyboard
(Base)克隆到fr.lproj
。 - 在法國
MainStoryboard.storyboard
改變(在UISegmentedControl
段的標題)一對夫婦的字符串。 - 在模擬器中,將語言設置爲法語。
- 從Xcode中運行應用程序。
結果:這個工作;我在運行的應用程序中顯示了更改的字符串。
但我想成爲所有幻想。我想使用.strings
文件進行法語本地化。 (這不只是一個被花哨的事;法國本地化將被移交給非技術性翻譯人員,誰也無法預料到主接口生成器)。所以:
- 選擇的基站
MainStoryboard.storyboard
在Xcode項目 航海家。 - 在「文件」檢查器的「本地化」下,將法語 本地化從「Interface Builder Cocoa Touch Storyboard」更改爲 「Localizable Strings」。
- 接受Xcode的警告,法國故事板將有利於一個
.strings
文件,該文件出現在助理編輯被丟棄 。 - 做了相同的兩個編輯;不存在他們錯誤的字符串 的問題,因爲它們都被評論爲
IBUISegmentedControl...segmentTitles
;並且.strings
文件中的其他任何地方都沒有 標籤文本。 - 從模擬器中刪除應用程序的現有(工作)副本。
- 運行應用程序。
結果:該視圖使用基本(原本是英語)本地化,而不是加載法語字符串。
這並不令人滿意。我嘗試從模擬器中刪除應用程序,甚至刪除派生數據文件夾。錯誤依然存在。
正如我所說的,我不能把一個.storyboard
文件轉移到非技術性的翻譯。我如何讓iOS接受來自.strings
文件的故事板本地化版本?
轉換故事板自動佈局了沒有效果。 – user698970 2013-02-25 20:00:52
對另一個類似問題的迴應建議在基本故事板上運行ibtool,並將其用作.strings文件的啓動程序,而不是提供的一個Interface Builder。這兩個文件是相同的。 – user698970 2013-02-25 20:12:58
下面是另一個變量:故事板上有很多無法訪問的場景:它們不是最初的控制器,它們沒有任何通向它們的路徑。 (不是我所做的;我必須和那些認爲這是個好主意的開發者交談。) 這可能會干擾.strings本地化嗎? – user698970 2013-02-25 21:57:13