2011-10-12 64 views
2

如何在UIDatePicker的日期和時間模式中本地化標籤「today」?本地化UIDatePicker「今日」標籤

我需要俄語,所以我給自己定UIDatePicker區域,設置區域和語言在設備設置中,設置「本地化本土發展區」和「本地化」財產info.plist以「儒」,但它並沒有任何區別 - 所有月份和日期標籤都是俄語,但「今天」標籤仍然是「今天」。

回答

1

問題通過創建本地化資源.xib解決(只需將本地化IB添加到使用datePicker的.xib中,除此之外別無其他)。

有人可以解釋爲什麼嗎?

1

是的,有兩個組件來本地化。第一個是你的strings.lproj,它包含你的每種語言的鍵值對,第二個,同樣重要的是本地化的xib或故事板。這兩個文件通過Xcode自動相互鏈接。所以,你需要一個ru.lproj localizable.strings文件以及一個本地化的俄羅斯Xib文件。

2

有了下面的代碼在日期選擇器中的所有文本的幫助下得到了本地化,包括字符串「今天」:

//Localizing the datepicker 
    NSLocale * locale = [[NSLocale alloc] initWithLocaleIdentifier:NSLocalizedString(@"en_US",nil)]; 
    datePicker.locale = locale; 
    datePicker.calendar.locale = locale; 

這裏我使用NSLocalizedString取代「EN_US」(鍵)用適當的區域設置標識符(值)。這與對應Localizable.strings文件針對特定的語言環境/語言的幫助下完成的,你需要添加:

/*==== Locale identifier ====*/ 
"en_US"="it_IT"; 

我在這裏使用過意大利語(意大利語)。

+0

Here _datepicker.calendar.locale = locale; _是多餘的 –