Friday 20 June 2014

Date Validation With Set-Date !!!



XML Layout for Date Picker !!!


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/lay_date_pic"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@color/LightGreen"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/dialog_dateview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_margin="12dp"
        android:text=""
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <DatePicker
        android:id="@+id/dialog_datepicker"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:calendarViewShown="false" />

</LinearLayout>



Function Start here :-



                public void showDatePicker_from_date() {
LayoutInflater inflater = (LayoutInflater) getLayoutInflater();
final AlertDialog.Builder dialogBuilder =
new AlertDialog.Builder(this);
final View customView = inflater.inflate(R.layout.datepicker, null);
dialogBuilder.setView(customView);
customView.startAnimation(zoom);
final Calendar now = Calendar.getInstance();
final DatePicker datePicker =
(DatePicker) customView.findViewById(R.id.dialog_datepicker);
final TextView dateTextView =
(TextView) customView.findViewById(R.id.dialog_dateview);
final SimpleDateFormat dateViewFormatter =
new SimpleDateFormat("dd-MM-yyyy", Locale.US);
final SimpleDateFormat formatter =
new SimpleDateFormat("dd-MM-yyyy", Locale.US);
// Minimum date
Calendar minDate = Calendar.getInstance();
try {
minDate.setTime(formatter.parse("12-12-2010"));
} catch (Exception e) {
e.printStackTrace();
}
datePicker.setMinDate(minDate.getTimeInMillis());
// View settings
dialogBuilder.setTitle("Choose a date");
Calendar choosenDate = Calendar.getInstance();
int year = choosenDate.get(Calendar.YEAR);
int month = choosenDate.get(Calendar.MONTH);
int day = choosenDate.get(Calendar.DAY_OF_MONTH);
try {
Date choosenDateFromUI = formatter.parse(
tv_fromdateof_application.getText().toString()
);
choosenDate.setTime(choosenDateFromUI);
year = choosenDate.get(Calendar.YEAR);
month = choosenDate.get(Calendar.MONTH);
day = choosenDate.get(Calendar.DAY_OF_MONTH);
} catch (Exception e) {
e.printStackTrace();
}
Calendar dateToDisplay = Calendar.getInstance();
dateToDisplay.set(year, month, day);
dateTextView.setText(
dateViewFormatter.format(dateToDisplay.getTime())
);
// Buttons
dialogBuilder.setNegativeButton(
"Go to today",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
tv_fromdateof_application.setText(
formatter.format(now.getTime())
);
dialog.dismiss();
}
}
);
dialogBuilder.setPositiveButton(
"Choose",
new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) {
Calendar choosen = Calendar.getInstance();
choosen.set(
datePicker.getYear(),
datePicker.getMonth(),
datePicker.getDayOfMonth()
);
tv_fromdateof_application.setText(
dateViewFormatter.format(choosen.getTime())
);
dialog.dismiss();
}
}
);
final AlertDialog dialog = dialogBuilder.create();
// Initialize datepicker in dialog atepicker
datePicker.init(
year,
month,
day,
new DatePicker.OnDateChangedListener() {
public void onDateChanged(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
Calendar choosenDate = Calendar.getInstance();
choosenDate.set(year, monthOfYear, dayOfMonth);
dateTextView.setText(
dateViewFormatter.format(choosenDate.getTime())
);
if (choosenDate.get(Calendar.DAY_OF_WEEK) ==
Calendar.SUNDAY ||
now.compareTo(choosenDate) > 0) {
dateTextView.setTextColor(
Color.parseColor("#ff0000")
);
((Button) dialog.getButton(
AlertDialog.BUTTON_POSITIVE))
.setEnabled(true);
} else {
dateTextView.setTextColor(
Color.parseColor("#000000")
);
((Button) dialog.getButton(
AlertDialog.BUTTON_POSITIVE))
.setEnabled(true);
}
}
}
);
// Finish
dialog.show();
}





No comments:

Post a Comment

How to do text writing animation?  In Android Development we do not have the option to use any other custom font in our default Tex...