Hello all…….
In today’s post I will show you how to use Calendar in android. Actually it is really easy to use calendar in android.
For that android provides a calendar widget.
We use calendar class to show the Calendar widget.
Here is the java source code for this example.
package com.coderzheaven.pack; import java.util.Calendar; import android.app.Activity; import android.app.DatePickerDialog; import android.app.Dialog; import android.graphics.Color; import android.os.Bundle; import android.view.MotionEvent; import android.view.View; import android.widget.Button; import android.widget.DatePicker; import android.widget.EditText; public class CalendarTestDemo extends Activity { String arrayMonth[] = {"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sept","Oct","Nov","Dec"}; Button date_button; static final int DATE_DIALOG_ID = 0; private int mYear; private int mMonth; private int mDay; EditText date_; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); date_ = (EditText)findViewById(R.id.EditText01); date_.setTextColor(Color.RED); date_button = (Button)findViewById(R.id.Button01); date_button.setOnTouchListener(new View.OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { showDialog(DATE_DIALOG_ID); return false; } }); // get the current date final Calendar c = Calendar.getInstance(); mYear = c.get(Calendar.YEAR); mMonth = c.get(Calendar.MONTH); mDay = c.get(Calendar.DAY_OF_MONTH); // display the current date (this method is below) updateDisplay(); } private void updateDisplay() { date_.setText( new StringBuilder() // Month is 0 based so add 1 .append(arrayMonth[mMonth]).append(" ") .append(mDay).append(" ") .append(mYear).append(" ")); } private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() { public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { mYear = year; mMonth = monthOfYear; mDay = dayOfMonth; updateDisplay(); } }; @Override protected Dialog onCreateDialog(int id) { switch (id) { case DATE_DIALOG_ID: return new DatePickerDialog(this, mDateSetListener, mYear, mMonth, mDay); } return null; } }
This is the main.xml for the layout for the above java code.
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_margin="10dp"> > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Calendar Demo from Coderzheaven" android:layout_margin="10dp" /> <EditText android:text="" android:id="@+id/EditText01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="10dp"> </EditText> <Button android:text="Show Calendar" android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp"> </Button> </LinearLayout>
Please leave your valuable comments on this post.
Thank you for this article.
For updateDisplay(), i have used the below code
date_.setText(String.format(“%d年%d月%d日”,mYear,mMonth,mDay));