簡體   English   中英

如何在android中獲取EditText提示的本地化日期格式

[英]How to get a localized date format for EditText hint in android

如何在android中獲取EditText提示的本地化日期格式?

yyyy-mm-dd(EN)
aaaa-mm-dd(SP)
aaaa-mm-jj(FR)

您可以使用DateFormat.getDateFormat(Context) ,它執行以下操作:

返回一個DateFormat對象,該對象可以根據當前語言環境和用戶的日期順序首選項以短格式(例如12/31/1999)格式化日期。

- DateFormat文檔

然后,傳遞一個ActivityContext類型的對象:

java.text.DateFormat formatter = android.text.format.DateFormat.getDateFormat(context);

來自SimpleDateFormat

SimpleDateFormat(String, Locale)

使用指定的非本地化模式構造新的SimpleDateFormat,並為指定的語言環境構造DateFormatSymbols和Calendar。

所以模式不應該改變

的DateFormatSymbols

封裝本地化的日期時間格式數據,例如月份名稱,星期幾的名稱和時區數據。 DateFormat和SimpleDateFormat都使用DateFormatSymbols來封裝此信息。

唯一應該改變的是月份名稱,tzdata或星期幾,如果您使用過的話。

用於獲取本地化模式字符串使用

toLocalizedPattern()

http://developer.android.com/reference/java/text/SimpleDateFormat.html#toLocalizedPattern%28%29

在調用SimpleDateFormat.toLocalizedPattern()之前嘗試調用SimpleDateFormat.applyLocalizedPattern(String template) SimpleDateFormat.toLocalizedPattern()

你可以這樣做:

DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(mContext);

String pattern = ((SimpleDateFormat) dateFormat).toLocalizedPattern();

editText.setHint(pattern);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM