Monday, August 27, 2012

Date Picker in Android

Date Picker Concept in Android


Main Screen, When Activity launch. Current Date will Display in Text Box

Change Month, Date, Year and click to Set Date1 Button, 3 message will appear. 
First Message - "Date Set.."
Second Message - Age on base of date set. In following example, message will be "U R 6 years old"
Third Message - Birthday Reminder. Here in this example, 2 days before and 2 days after, set in coding




Now, Click on Second Button - "Set Date2", DatePicker Dialogue appear. Set the date 


After click to Set button of  DatePicker Dialogue, Message will appear which display Year and Month of Age. Also in second text box date will set


==================================================================

DatePicker1.java 


package co.PranavVarma;

import java.util.Calendar;

import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.TimePickerDialog;
import android.os.Bundle;
import android.text.method.DateTimeKeyListener;
import android.view.Gravity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.DatePicker.OnDateChangedListener;
import android.widget.TextView;
import android.widget.TimePicker;
import android.widget.Toast;

public class DatePicker1 extends Activity{

public TextView tvhead, tvback, tvdtpick, tvdpd1, tvtime1, tvtime2;
public DatePicker dtpick1;
public DatePickerDialog dtpd1;
public Button btnsd1, btnsd2;
public int cyear, byear, cmonth,bmonth, cdate,bdate, hour1, min1;

public Calendar c = Calendar.getInstance();
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.datepicker1);


dtpick1 = (DatePicker) findViewById(R.id.dtpick1);
tvhead = (TextView) findViewById(R.id.txtHead);
tvback = (TextView) findViewById(R.id.txtBack);
tvdtpick = (TextView) findViewById(R.id.txtdtPickView);

tvhead.setText(getIntent().getExtras().getString("Head")+ " Concepts");
tvdtpick.setText("Date:" + dtpick1.getDayOfMonth() + " " + (dtpick1.getMonth()+1) + " "+ 
dtpick1.getYear());
tvback.setOnClickListener(new OnClickListener() {

public void onClick(View arg0) {
finish();

}
});
btnsd1 = (Button) findViewById(R.id.btnSetDate1);
btnsd1.setOnClickListener(new OnClickListener() {

public void onClick(View arg0) {
Toast t1 = Toast.makeText(DatePicker1.this, "Date Set..", 2000);
t1.setGravity(Gravity.CENTER_VERTICAL,0,0);
t1.show();
tvdtpick.setText("Date:" + dtpick1.getDayOfMonth() + " " + (dtpick1.getMonth()+1) + " "+ 
dtpick1.getYear());

cyear = c.get(Calendar.YEAR);
byear = dtpick1.getYear();
cmonth = c.get(Calendar.MONTH);
bmonth = dtpick1.getMonth();
cdate = c.get(Calendar.DATE);
bdate = dtpick1.getDayOfMonth();
int days = c.get(Calendar.DAY_OF_YEAR);



//Toast.makeText(DatePicker1.this, " "+days, 2000).show();

if(cmonth>bmonth)
Toast.makeText(DatePicker1.this, "U R " +(cyear-byear)+" years and "+(cmonth-bmonth) +" months Old", 3000).show();
else if(cmonth==bmonth)
Toast.makeText(DatePicker1.this, "U R " +(cyear-byear)+" years Old", 3000).show();
else
Toast.makeText(DatePicker1.this, "U R " +(cyear-byear-1)+" years and "+(12-bmonth+cmonth) +" months Old", 3000).show();


if(cmonth==bmonth)

if((cdate-bdate)<=2 && (cdate-bdate)>0)
//Toast.makeText(DatePicker1.this, "Birthday gone before " + (cdate-bdate)+" day", 2000).show();
Toast.makeText(DatePicker1.this, "Birthday After " + (cdate-bdate)+" day", 2000).show();
else if(cdate==bdate)
Toast.makeText(DatePicker1.this, "Today, is your birthday", 2000).show();
else if((bdate-cdate)<=2 && (bdate-cdate)>0)
//Toast.makeText(DatePicker1.this, "Birthday After " + (bdate-cdate)+" day", 2000).show();
Toast.makeText(DatePicker1.this, "Birthday gone before " + (bdate-cdate)+" day", 2000).show();
}
});

btnsd2 = (Button) findViewById(R.id.btnSetDate2);
tvdpd1 = (TextView) findViewById(R.id.txtdtPick2);
btnsd2.setOnClickListener(new OnClickListener() {

public void onClick(View arg0) {

new DatePickerDialog(DatePicker1.this, dateset, 
c.get(Calendar.YEAR), c.get(Calendar.MONTH), c.get(Calendar.DAY_OF_MONTH)
).show() ;
}
});


}
public DatePickerDialog.OnDateSetListener dateset = new DatePickerDialog.OnDateSetListener() {

@Override
public void onDateSet(DatePicker view, int year, int month, int day) {
/*cyear = year;
cmonth = month;
cdate = day;*/
tvdpd1.setText("Year: "+year + " Month : " + (month+1)  + " Date : " + day);

//----- same coding as above--------
// ------ To find the age and Birthday--------
cyear = c.get(Calendar.YEAR);
byear = year;
cmonth = c.get(Calendar.MONTH);
bmonth = month;
cdate = c.get(Calendar.DATE);
bdate = day;
int days = c.get(Calendar.DAY_OF_YEAR);



//Toast.makeText(DatePicker1.this, " "+days, 2000).show();

if(cmonth>bmonth)
Toast.makeText(DatePicker1.this, "U R " +(cyear-byear)+" years and "+(cmonth-bmonth) +" months Old", 3000).show();
else if(cmonth==bmonth)
Toast.makeText(DatePicker1.this, "U R " +(cyear-byear)+" years Old", 3000).show();
else
Toast.makeText(DatePicker1.this, "U R " +(cyear-byear-1)+" years and "+(12-bmonth+cmonth) +" months Old", 3000).show();


if(cmonth==bmonth)

if((cdate-bdate)<=2 && (cdate-bdate)>0)
//Toast.makeText(DatePicker1.this, "Birthday gone before " + (cdate-bdate)+" day", 2000).show();
Toast.makeText(DatePicker1.this, "Birthday After " + (cdate-bdate)+" day", 2000).show();
else if(cdate==bdate)
Toast.makeText(DatePicker1.this, "Today, is your birthday", 2000).show();
else if((bdate-cdate)<=2 && (bdate-cdate)>0)
//Toast.makeText(DatePicker1.this, "Birthday After " + (bdate-cdate)+" day", 2000).show();
Toast.makeText(DatePicker1.this, "Birthday gone before " + (bdate-cdate)+" day", 2000).show();

}


};

public TimePickerDialog.OnTimeSetListener timeset = new TimePickerDialog.OnTimeSetListener() {

public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
 
hour1 = hourOfDay;
min1 = minute;
tvtime2.setText("Time2 : "+ hour1+":"+min1);
}
};
}




=================================================================

if u like this article, do not forget to give feedback.
For any query, you can contact me through mail  pranavdv@gmail.com
Thanks from
Pranav


3 comments:

  1. This comment has been removed by the author.

    ReplyDelete
  2. This comment has been removed by the author.

    ReplyDelete
  3. This comment has been removed by the author.

    ReplyDelete

Notification Example

Notification Example This is an example Notification for Android Operating System.. It covers a two notification, one has sound, vibratio...