Pranjal Rawat
Pranjal Rawat

Reputation: 3

How to update date month and year in datepicker andriod studio kotlin

Day,year and month using these given values after being updated. I want them to use updated values please help.

var day = 1  
var month = 1  
var year = 1999  
val dpd = DatePickerDialog(this,android.R.style.Theme_Holo_Dialog,
    DatePickerDialog.OnDateSetListener { datePicker, selyear,
   monthOfYear, dayOfMonth ->

    day = dayOfMonth
    month = monthOfYear
    year = selyear
    tv.text = "$day - $month - $year"  /*printing day month year*/

   }, year, month, day
 )

  dpd.show()

   val pday = 30 - day   /* day = 1(Not the chosen value)*/
   val pmonth = 12 - month  
   val pyear = 2019 - year 

Upvotes: 0

Views: 1730

Answers (1)

forpas
forpas

Reputation: 164099

Change the variable declarations from val to var and update them inside the listener:

        val c = Calendar.getInstance()
        var day = c.get(Calendar.DAY_OF_MONTH)
        var month = c.get(Calendar.MONTH)
        var year = c.get(Calendar.YEAR)

        val dpd = DatePickerDialog(
            this,
            android.R.style.Theme_Holo_Dialog,
            DatePickerDialog.OnDateSetListener { datePicker, selyear, monthOfYear, dayOfMonth ->
                day = dayOfMonth
                month = monthOfYear + 1
                year = selyear
                tv.text = "$day - $month - $year"

            }, year, month, day
        )

        dpd.show()

Upvotes: 1

Related Questions