gpt4 book ai didi

java - Android Material 日期选择器日期格式

转载 作者:行者123 更新时间:2023-12-04 23:52:04 24 4
gpt4 key购买 nike

我在我的应用程序中使用 Material 日期选择器来选择日期。下面是我的代码。

MaterialDatePicker.Builder builder = MaterialDatePicker.Builder.datePicker();
builder.setSelection(Calendar.getInstance().getTimeInMillis());
builder.setTitleText(getString(R.string.selectDate));
final MaterialDatePicker materialDatePicker = builder.build();

btn_pickDate(new View.OnClickListener() {
@Override
public void onClick(View v) {
materialDatePicker.show(getSupportFragmentManager(),"DATE_PICKER");
}
});

materialDatePicker.addOnPositiveButtonClickListener(new MaterialPickerOnPositiveButtonClickListener() {
@Override
public void onPositiveButtonClick(Object selection) {
startDate.setText(materialDatePicker.getHeaderText());
}
});
当我选择一个日期时,日期在 中返回dd MMM yyyy 在设备一和 MMM dd, yyyy 在设备二中。
我需要在所有设备上以相同的格式返回日期(例如: dd MMM yyyy )。如何在 Material 日期选择器中实现这一点。

最佳答案

addOnPositiveButtonClickListener listener 将所选日期作为 Long 值返回。这样你就有了长值而不是字符串。
您可以使用:

    MaterialDatePicker<Long> materialDatePicker = builder.build();

materialDatePicker.addOnPositiveButtonClickListener(new MaterialPickerOnPositiveButtonClickListener<Long>() {
@Override
public void onPositiveButtonClick(Long selection) {
//....
Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
calendar.setTimeInMillis(selection);
SimpleDateFormat format = new SimpleDateFormat("yyyy MM dd");
String formattedDate = format.format(calendar.getTime());
}
});
在 Kotlin :
materialDatePicker.addOnPositiveButtonClickListener {
val utc = Calendar.getInstance(TimeZone.getTimeZone("UTC"))
utc.timeInMillis = it
val format = SimpleDateFormat("yyyy-MM-dd")
val formatted: String = format.format(utc.time)
}

关于java - Android Material 日期选择器日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63359732/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com