将字符串值从onclick date listner传递给其他函数 [英] passing string values to other function from onclick date listner

查看:102
本文介绍了将字符串值从onclick date listner传递给其他函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要一个格式如yyyyMMDD的日期,所以我按照我的格式将我的日期转换为

I need a date in the format like "yyyyMMDD" so i converted my date in my required format as

String YY = Integer.toString(year); 
String MM = String.format("%02d", month + 1); 
String DD = String.format("%02d", day); 
String selecteddate = YY; 
selecteddate = selecteddate.concat(MM); 
final String selecteddate1 = selecteddate.concat(DD);

我想使用 selecteddata1 日期查找日期差异。

I want to use selecteddata1 AS my from date in finding the date difference.

推荐答案

@Nik,

尝试这个

DatePickerDialog mDatePicker = new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {
        public void onDateSet(DatePicker datepicker, int selectedyear, int selectedmonth, int selectedday) {
            year = selectedyear;
            month = selectedmonth;
            day = selectedday;
            String date = "" + day + "-" + (month+1) + "-" + year;
            stardate.setText(date);

SimpleDateFormat simpleDateFormat = 
                new SimpleDateFormat("dd/M/yyyy");

      try {

        Date date1 = simpleDateFormat.parse(""+day+"/"+(month+1)+"/"+year");
        Date date2 = simpleDateFormat.parse("13/10/2013"); //If you want to use the current date, use "new Date()"

    printDifference(date1, date2);

      } catch (ParseException e) {
        e.printStackTrace();
      }

    }
        }
    }, year, month, day);
    mDatePicker.setTitle("Please select date");
    mDatePicker.getDatePicker().

    setMaxDate(System.currentTimeMillis());
    mDatePicker.show();
}
});

//1 minute = 60 seconds
    //1 hour = 60 x 60 = 3600
    //1 day = 3600 x 24 = 86400
    public void printDifference(Date startDate, Date endDate){

        //milliseconds
        long different = endDate.getTime() - startDate.getTime();

        System.out.println("startDate : " + startDate);
        System.out.println("endDate : "+ endDate);
        System.out.println("different : " + different);

        long secondsInMilli = 1000;
        long minutesInMilli = secondsInMilli * 60;
        long hoursInMilli = minutesInMilli * 60;
        long daysInMilli = hoursInMilli * 24;

        long elapsedDays = different / daysInMilli;
        different = different % daysInMilli;

        long elapsedHours = different / hoursInMilli;
        different = different % hoursInMilli;

        long elapsedMinutes = different / minutesInMilli;
        different = different % minutesInMilli;

        long elapsedSeconds = different / secondsInMilli;

        System.out.printf(
            "%d days, %d hours, %d minutes, %d seconds%n", 
            elapsedDays,
            elapsedHours, elapsedMinutes, elapsedSeconds);

    }

这篇关于将字符串值从onclick date listner传递给其他函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆