DatePIcker in Android
DatePickerDialogDemo:
** DatePicker dialog demo */
public class DatePickerDialogDemo extends AppCompatActivity {
/** EditText have setOnTouchListener*/
private EditText etSelectDate;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_date_picker_dialog_demo);
/** Initialize edittext */
etSelectDate = (EditText) findViewById(R.id.activity_date_picker_dialog_demo_select_et);
/** Getting current date using utility Calendar*/
Calendar calendar = Calendar.getInstance();
final int mYear = calendar.get(Calendar.YEAR);
final int mMonth = calendar.get(Calendar.MONTH);
final int mDay = calendar.get(Calendar.DAY_OF_MONTH);
/** for first Time, edittext is set to current date */
/** Note: Month value should be added +1 */
etSelectDate.setHint(mDay+"/"+(mMonth+1)+"/"+mYear);
/** Creating date picker dialog instance and passing current date, it shows current date firstly*/
/** Note: Month value should be added +1 */
final DatePickerDialog datePickerDialog = new DatePickerDialog(DatePickerDialogDemo.this,
new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker datePicker, int i, int i1, int i2) {
etSelectDate.setText(""+i2+"/"+(i1+1)+"/"+i);
}
}, mYear,mMonth,mDay);
/** When user first time touches on edittext,dialog will be shown
* After picked date,picked date will be showned in edittext
* Note: Month value should be added +1 */
etSelectDate.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
datePickerDialog.show();
return true;
}
});
}
}
activity_date_picker_dialog_demo:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_date_picker_dialog_demo"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="sciens.com.toolbar.DatePickerDialogDemo">
<TextView
style="@style/NormalTextView"
android:text="Select date"
android:layout_gravity="center_horizontal" />
<EditText
android:id="@+id/activity_date_picker_dialog_demo_select_et"
style="@style/NormalEditText"
android:layout_width="match_parent"
android:layout_marginTop="20dp"
android:gravity="center_horizontal"/>
</LinearLayout>
Style:
<resources>
<style name="NormalTextView">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textSize">16dp</item>
<item name="android:textColor">@color/colorPrimary</item>
</style>
<style name="NormalEditText">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textSize">16dp</item>
<item name="android:textColorHint">@color/colorPrimary</item>
</style>
</resources>