2012-08-09 74 views
2

我第一次本地化應用程序,只需要本地化我的「Localizable.strings」文件。爲了設置它,我創建了文件,然後選中它並按下「Make localized ...」按鈕,它讓我添加一個英文本地化(我還沒有添加任何其他語言)。Xcode 4.4本地化改變 - 我如何不本地化主要故事板?

令我驚訝的是,在Xcode 4.4,這樣做還可以自動定位這些文件,將其移動到 「en.lproj」 文件夾:

  • InfoPlist.strings
  • MainStoryboard.storyboard

我不需要或不想要本地化故事板文件,因爲沒有任何內容是基於語言的......並且據我所知,我不需要本地化InfoPlist.strings(除非我決定本地化應用程序名稱?)。

那麼,我該如何unlocalize一個文件?

我看到有一個「使用基地國際化」的選項,根據我的理解,它會使用基本的主要故事板而不是本地化。這聽起來像什麼,我需要,但根據的Xcode 4.4版本說明,不會在iOS上項目的工作:

項目編輯器使用鹼以國際化的設置工作 只對Mac產品部署在OS X v.10.8及更高版本。 Xcode 也必須在OS X v.10.8或更高版本上運行。此項設置不是iOS項目支持的 。 11712855

https://developer.apple.com/library/mac/#releasenotes/DeveloperTools/RN-Xcode/_index.html

感謝您的幫助。

+0

做了一些測試...有趣的是,當用Xcode 4.4開始一個新項目時,它會自動創建en.lproj本地化,並在那裏使用InfoPlist.strings和MainStoryboard.storyboard。添加法語和西班牙語,以及讓那些不本地化故事板似乎工作(不知何故,使用法語或西班牙語時,它仍然加載英語故事板,即使它在該en.lproj文件夾中)。 – 2012-08-09 16:12:04

+1

如果Apple無法在目標語言中找到本地化資源,則本地化通常會回退到其他語言。不記得它是否專門回到英文,或者是一個更聰明的目標基地,但對於講英語的開發者,你可以期望它降到英語水平。 – ima747 2012-08-09 17:19:06

回答

1

如果您選擇一個文件並查看該文件的信息。在「常規」水龍頭下,有一個用於各種語言+/-定位的部分。只要從那裏刪除所有的語言,它將不再被本地化。

+2

你基本上是正確的,但我認爲增加一個說明很重要:如果你取消選中所有語言,它會刪除故事板文件(儘管它確實會給你一個取消的機會)。它不會自動將故事板移動到基本目錄中......因此,您必須首先製作故事板文件的副本,然後在取消選中所有語言後將其拖回到您的項目中。 (我不確定這是否是一種更好的解決方案,而不是除了英文以外的其他語言,因爲其他語言似乎仍然能夠從該en.lproj文件夾中獲取故事板)。 – 2012-08-10 17:14:55