如何在Android

时间:2017-06-14 11:03:50

标签: xamarin xamarin.android textview datetime-format

我有个约会对象:

var date = new DateTime(2017,6,14,13,0,0);

和一个显示它的textview。 我想显示为' 14/06/2017 13:00 '当我将设备的日期和时间设置为' 使用24小时格式' 和' 16/06/2017 1:00 PM '当我取消选中' 使用24小时格式'。

我该怎么办?

谢谢!

2 个答案:

答案 0 :(得分:1)

您可以使用以下代码以特定格式转换日期对象

SimpleDateFormat dateFormat;
if (android.text.format.DateFormat.is24HourFormat(YourActivityName.this)) {
    // 24 hour format
    dateFormat = new SimpleDateFormat("dd/MM/yyyy hh:mm");
}
else
{
    // 12 hour format
    dateFormat = new SimpleDateFormat("dd/MM/yyyy hh:mm a");
}
String newDate= dateFormat.format(date);
myTextView.setText(newDate);

答案 1 :(得分:0)

在Xamarin.Android上,它与在Android上有所不同,如Muhammads所述:

var date = new DateTime(2017, 6, 14, 13, 0, 0);
var is24hour = Android.Text.Format.DateFormat.Is24HourFormat(this);
var format = is24hour ? "dd/MM/yyyy HH:mm" : "dd/MM/yyyy hh:mm tt";
var dtString = date.ToString(format);