2012-01-23 27 views
2

我是Objective-C編程的新手,但來自Java世界的移動開發。在Android中,我們使用字符串資源,然後指向Java類中的那些資源。我們應該使用iOS中是否有類似的過程,或者我們是否將字符串「硬編碼」爲實現文件?我還沒有找到使用本地化字符串(和.strings)文件的好教程。在iOS中使用字符串的最佳方法

+0

已經回答了在這裏: http://stackoverflow.com/questions/778466/iphone-application-international-sales – Almo

回答

6

您可以使用來自Foundation的NSLocalizedString宏來檢索本地化的字符串。請閱讀此處: http://www.icanlocalize.com/site/tutorials/iphone-applications-localization-guide/

示例:構建一個雙語(英語 - 法語)應用程序。 每當遇到要顯示給用戶的字符串時,都使用NSLocalizedString而不是實際的字符串常量。例如:

代替

self.title = @"Welcome"; 

使用

self.title = NSLocalizedString(@"Welcome"); 

創建你的應用程序包內的兩個目錄如下:

MyApp.app 
    English.lproj 
     Localizable.strings 
    French.lproj 
     Localizable.strings 

在第一Localizable.strings文件,你可以寫鍵值對如下:

"Welcome" = "Welcome"; 

在第二個:

"Welcome" = "Bienvenus"; 

當這些文件和文件夾添加到您的應用程序,使用NSLocalizedString宏重新編譯它,您就可以使用您的應用在法國人也當系統語言是法語。

+0

所以你還是要硬編碼在實施「歡迎」字符串?有沒有辦法通過軟代碼訪問這個字符串? – clocksmith

相關問題