为了账号安全,请及时绑定邮箱和手机立即绑定

从 String 设置 DatePickerDialog 中的日期

从 String 设置 DatePickerDialog 中的日期

翻翻过去那场雪 2023-09-27 10:21:44
如何从字符串中设置 DatePicker 中的日期(例如:02/10/19):以下是代码:  iqp_editDate.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View v) {            new DatePickerDialog(ActivityClass.this, (DatePickerDialog.OnDateSetListener) date1, y, m, d).show();        }    }); DatePickerDialog.OnDateSetListener date1 = new DatePickerDialog.OnDateSetListener() {    @Override    public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {              y = year;        m = month;        d = dayOfMonth;        dateMonth = month + 1;        dateYear = year;    }};
查看完整描述

3 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

更新:误解了问题:


Calendar cal = Calendar.getInstance()

cal.set(Calendar.HOUR_OF_DAY,18);

cal.set(Calendar.MINUTE,0);

cal.set(Calendar.DATE,2);

cal.set(Calendar.MONTH,9); //Month -1


//Or to set it from a String:

String string = "02/10/19";

DateFormat format = new SimpleDateFormat("dd/MM/yy", Locale.getDefault());

Date date = format.parse(string);

cal.setTimeInMillis(date.getTime());


new DatePickerDialog(getContext(),date1, cal 

                                    .get(Calendar.YEAR), cal .get(Calendar.MONTH),

                                    cal .get(Calendar.DAY_OF_MONTH)).show();


查看完整回答
反对 回复 2023-09-27
?
Cats萌萌

TA贡献1805条经验 获得超9个赞

字符串是一个字符数组。这意味着您可以创建一个循环并将不同的日、月和年值设置为字符串的不同部分。


String date = "02/19/19";

String year = "";

for(int i = 0; i < date.length; i++)

{

  month += date.charAt(i);

  ...

}

然后,当它遇到“/”时,你会告诉它何时从添加月份切换到添加日期到年份


if(date.charAt(i) == '/')

{

  ...

}

在这一切的最后,如果你需要将它变成一个 int 那么


int month = Integer.parseInt("month");

抱歉,我要去某个地方,所以我不能只为你写出代码,但我相信你可以从我给你的内容中找出答案。


查看完整回答
反对 回复 2023-09-27
?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

以下代码对我来说效果很好:


new DatePickerDialog(Activityclass.this, date1, cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH)).show();


DatePickerDialog.OnDateSetListener date1 = new DatePickerDialog.OnDateSetListener() {

    @Override

    public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {

        view.setMinDate(1559327400);

        y = year;

        m = month;

        d = dayOfMonth;

        dateMonth = month + 1;

        dateYear = year;

        iqp_editDate.setText(dayOfMonth + "/" + (month + 1) + "/" + year);

        try {

            epoch = new java.text.SimpleDateFormat("MM/dd/yyyy").parse(m + "/" + dayOfMonth + "/" + year).getTime() / 1000;

        } catch (ParseException e) {

            e.printStackTrace();

        }


    }

};


查看完整回答
反对 回复 2023-09-27
  • 3 回答
  • 0 关注
  • 134 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信