偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

iOS應(yīng)用內(nèi)切換本地化語言

移動開發(fā)
最近遇到個需要在應(yīng)用內(nèi)部設(shè)置語言的需求,默認使用系統(tǒng)設(shè)置的語言,如果用戶在App內(nèi)設(shè)置了別的語言,以后則按照新設(shè)置的語言顯示界面。于是,寫了個新輪子SOLocalization,希望大家喜歡,其實代碼很簡單,有興趣的可以直接去讀源代碼,有補充的可以直接向我提交 pull request。

最近遇到個需要在應(yīng)用內(nèi)部設(shè)置語言的需求,默認使用系統(tǒng)設(shè)置的語言,如果用戶在App內(nèi)設(shè)置了別的語言,以后則按照新設(shè)置的語言顯示界面。

于是,寫了個新輪子SOLocalization,希望大家喜歡,其實代碼很簡單,有興趣的可以直接去讀源代碼,有補充的可以直接向我提交 pull request。

[[211769]]

1.創(chuàng)建本地化文件。

創(chuàng)建本地化字符串文件,文件名可以是默認的 infoPlist.strings,也可以是別的,為這個文件設(shè)置好要支持的語言及內(nèi)容。

2.導(dǎo)入 SOLocalization。

3.配置 SOLocalization。

設(shè)置支持的語言及默認語言,當系統(tǒng)設(shè)置的語言不屬于支持的語言時會使用默認語言。

  1. [SOLocalization configSupportRegions:@[SOLocalizationEnglish, SOLocalizationSimplifiedChinese] fallbackRegion:SOLocalizationEnglish]; 

4.設(shè)置 UIKit 對象。

為 UIKit 對象設(shè)置合適的屬性,像下面這樣簡單,而且這樣設(shè)置后,當語言切換時,這些 UIKit 對象的文本內(nèi)容會自動變?yōu)樾略O(shè)置的語言,不需要任何額外處理。

 

  1. UIBarButtonItem *change = [[UIBarButtonItem alloc]initWithTitle:@"" style:UIBarButtonItemStylePlain target:self action:@selector(changeLanguage:)]; 
  2. // 這里的 @"Setting" 就是 strings 文件中對應(yīng)的那個 key,下同 
  3. change.sol_title = @"Setting";  
  4. self.navigationItem.rightBarButtonItem = change; 
  5. self.label.sol_text = @"label"
  6. [self.button sol_setTitle:@"button" forState:UIControlStateNormal]; 
  7. self.textField.sol_placeholder = @"textField placeholder"
  8. self.navigationItem.sol_title = @"title"

對于 SOLocalization 暫不支持切換語言后自動修改文本內(nèi)容的 UIKit 對象,可以這樣獲取需要的本地化字符串:

 

  1. // 其中 “title” 為 strings 文件中對應(yīng)的 key,“infoPlist”是本地化字符串文件名 
  2. NSString *localizedString = SOLocalizedStringFromTable(@"title", @"infoPlist"); 

5.修改應(yīng)用內(nèi)使用的語言

 

  1. // to use English 
  2. [SOLocalization sharedLocalization].region = SOLocalizationEnglish; 
  3. // to use 簡體中文 
  4. [SOLocalization sharedLocalization].region = SOLocalizationSimplifiedChinese; 

6.自定義的本地化字符串文件名

SOLocalization 提供的 API 中,默認使用的本地化字符串文件名為 infoPlist.strings 文件,如果使用其他文件名(比如使用這個文件名:local.strings),如下即可:

 

  1. // 對于支持的 UIKit 對象 
  2. label.sol_table = @"local"
  3. // 使用 SOLocalizedStringFromTable 時 
  4. NSString *localizedString = SOLocalizedStringFromTable(@"title", @"local"); 
責任編輯:未麗燕 來源: scfhao
相關(guān)推薦

2012-05-14 17:10:50

iOS

2012-05-13 13:15:54

IOS

2016-11-29 08:25:07

iOS軟件開發(fā)者數(shù)據(jù)可視化

2010-03-09 09:33:04

Windows Emb

2022-09-21 11:51:26

模塊化應(yīng)用

2013-10-16 15:50:01

iOS優(yōu)化本地化

2015-03-30 09:32:15

XcodeiOS應(yīng)用程序

2011-10-10 13:40:22

Distimo移動應(yīng)用本地化

2024-01-10 09:00:00

OpenAILocalGPT開源大模型

2011-07-04 10:56:42

諾基亞蘋果谷歌

2012-06-08 10:48:31

商務(wù)社交

2011-05-25 10:13:09

WordPressJavaScript

2011-05-30 17:11:08

測試策略

2009-05-11 09:15:20

MozillaPrism瀏覽器

2013-11-12 10:15:45

App翻譯本地化

2011-05-26 17:28:48

軟件本地化測試

2023-06-01 08:18:47

GPT大語言模型

2009-05-11 09:40:10

PrismMozilla本地化

2020-09-21 08:34:28

數(shù)據(jù)中心

2025-02-18 00:04:00

DeepSeek模型ChatGPT
點贊
收藏

51CTO技術(shù)棧公眾號