AndroidでEditTextヒントのローカライズされた日付形式を取得するにはどうすればよいですか?
yyyy-mm-dd(EN)
aaaa-mm-dd(SP)
aaaa-mm-jj(FR)
AndroidでEditTextヒントのローカライズされた日付形式を取得するにはどうすればよいですか?
yyyy-mm-dd(EN)
aaaa-mm-dd(SP)
aaaa-mm-jj(FR)
SimpleDateFormat(String, Locale)
指定された非ローカライズされたパターンと、指定されたロケールのDateFormatSymbolsおよびCalendarを使用して、新しいSimpleDateFormatを構築します。
したがって、パターンは変更されるべきではありません
月の名前、曜日の名前、タイムゾーンデータなど、ローカライズされた日時の書式設定データをカプセル化します。DateFormatとSimpleDateFormatはどちらも、DateFormatSymbolsを使用してこの情報をカプセル化します。
変更する必要があるのは、月の名前、tzdata、または曜日の名前(使用した場合)のみです。
ローカライズされたパターンを取得するには文字列を使用します
toLocalizedPattern()
http://developer.android.com/reference/java/text/SimpleDateFormat.html#toLocalizedPattern%28%29
を使用できますDateFormat.getDateFormat(Context)
。これは次のことを行います。
DateFormat
現在のロケールとユーザーの日付順の設定に従って、日付を短い形式(1999年12月31日など)でフォーマットできるオブジェクトを返します。
Activity
次に、タイプまたはContext
:のオブジェクトを渡します。
java.text.DateFormat formatter = android.text.format.DateFormat.getDateFormat(context);
SimpleDateFormat.applyLocalizedPattern(String template)
電話をかける前に電話してみてくださいSimpleDateFormat.toLocalizedPattern()
あなたはこのようなことをすることができます:
DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(mContext);
String pattern = ((SimpleDateFormat) dateFormat).toLocalizedPattern();
editText.setHint(pattern);