HOW TO CREATE DATE AND TIME ON SAME PAGE WITH DIALOG VIEW
package com.android.futurediary;
import java.util.ArrayList;
import java.util.Calendar;
import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class TimePicker extends Activity implements OnClickListener
{
private TextView mTimeDisplay,mDateDisplay;
private Button mPickTime , mPickDate,savebut ;
private EditText specialtimeline ,enterevent;
private String providedeventname,providedeventdetails;
private String hour,minute,year,month,day;
private String time,date;
private ArrayList<EventDetailFinder> EventDetailFinderObjArrayList;
private int m,d,y;
final Calendar c = Calendar.getInstance();
private int mHour = c.get(Calendar.HOUR_OF_DAY);
private int mMinute = c.get(Calendar.MINUTE);
private int mYear = c.get(Calendar.YEAR);
private int mMonth =c.get(Calendar.MONTH);
private int mDay = c.get(Calendar.DAY_OF_MONTH);
static final int DATE_DIALOG_ID = 2;
static final int TIME_DIALOG_ID = 1;
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.noteentry);
// capture our View elements
specialtimeline=(EditText) findViewById(R.id.specialtime);
enterevent =(EditText) findViewById(R.id.entrynote);
mTimeDisplay = (TextView) findViewById(R.id.timeDisplay);
mPickTime = (Button) findViewById(R.id.timebut);
mDateDisplay = (TextView) findViewById(R.id.dateDisplay);
mPickDate = (Button) findViewById(R.id.datebut);
savebut = (Button)findViewById(R.id.addingnote);
savebut.setOnClickListener(this);
EventDetailFinderObjArrayList = new ArrayList<EventDetailFinder>();
// add a click listener to the button
mPickTime.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
showDialog(TIME_DIALOG_ID);
final Calendar c = Calendar.getInstance();
// get the current time
mHour = c.get(Calendar.HOUR_OF_DAY);
mMinute = c.get(Calendar.MINUTE);
updateDisplayTime();
}
});
mPickDate.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
// TODO Auto-generated method stub
showDialog(DATE_DIALOG_ID);
final Calendar p = Calendar.getInstance();
// display the current date
mYear = p.get(Calendar.YEAR);
mMonth = p.get(Calendar.MONTH);
mDay = p.get(Calendar.DAY_OF_MONTH);
updateDisplayDate();
}
});
}
//time part
private void updateDisplayTime()
{
// TODO Auto-generated method stub
mTimeDisplay.setText(
new StringBuilder()
.append(pad(mHour)).append(":")
.append(pad(mMinute)));
}
private static String pad(int p)
{
if(p > 9)
return String.valueOf(p);
else
return "0" + String.valueOf(p);
}
//date part
private void updateDisplayDate()
{
mDateDisplay.setText(
new StringBuilder()
// Month is 0 based so add 1
.append(mMonth + 1).append("-")
.append(mDay).append("-")
.append(mYear).append(" "));
m = mMonth + 1 ;
d = mDay ;
y= mYear;
}
private TimePickerDialog.OnTimeSetListener mTimeSetListener = new TimePickerDialog.OnTimeSetListener()
{
public void onTimeSet(android.widget.TimePicker view,int hourOfDay, int minute)
{
// TODO Auto-generated method stub
mHour = hourOfDay;
mMinute = minute;
updateDisplayTime();
}
};
private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() {
public void onDateSet(android.widget.DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
updateDisplayDate();
}
};
protected Dialog onCreateDialog(int id)
{
switch (id)
{
case TIME_DIALOG_ID:
return new TimePickerDialog(this,mTimeSetListener, mHour, mMinute, false);
case DATE_DIALOG_ID:
return new DatePickerDialog(this,mDateSetListener, mYear, mMonth, mDay);
}
return null;
}
public void onClick(View v)
{
if(v.getId() == R.id.addingnote)
{
mainevent();
}
}
public void mainevent()
{
providedeventname = (specialtimeline.getText().toString());
providedeventdetails =(enterevent.getText().toString());
hour = Integer.toString(mHour);
minute = Integer.toString(mMinute);
year = Integer.toString(y);
month = Integer.toString(m);
day = Integer.toString(d);
time = hour.concat(":").concat(minute);
date = month.concat("/").concat(day).concat("/").concat(year);
StorageDB openHelperClass = new StorageDB(this);
SQLiteDatabase sqliteDatabase = openHelperClass.getReadableDatabase();
Cursor cursor = sqliteDatabase.query(StorageDB.DIARY_EVENT_TABLE , null, null, null, null, null, null);
startManagingCursor(cursor);
cursor.moveToFirst();
EventDetailFinder EventDetailFinderObj = new EventDetailFinder();
EventDetailFinderObj.setEventName(providedeventname);
EventDetailFinderObj.setEventTime(time);
EventDetailFinderObj.setEventDate(date);
EventDetailFinderObj.setEventDetails(providedeventdetails);
//EventDetailFinderObj.setuGraduateEmail(providedUgraduateEmail);
EventDetailFinderObjArrayList.add(EventDetailFinderObj);
insertUndergraduate(EventDetailFinderObj);
}
public void insertUndergraduate(EventDetailFinder givenEventDetailFinderObj)
{
StorageDB storageeventObj = new StorageDB(this);
SQLiteDatabase sqliteDatabaseevent = storageeventObj.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(StorageDB.COLUMN_NAME_EVENT_NAME, givenEventDetailFinderObj.getEventName());
contentValues.put(StorageDB.COLLUMN_NAME_EVENTNOTE, givenEventDetailFinderObj.getEventDetails());
contentValues.put(StorageDB.COLLUMN_NAME_DATE, givenEventDetailFinderObj.getEventDate());
contentValues.put(StorageDB.COLLUMN_NAME_TIME, givenEventDetailFinderObj.getEventTime());
//long affectedColumnId = sqliteDatabaseevent.insert(StorageDB.DIARY_EVENT_TABLE, null, contentValues);
sqliteDatabaseevent.close();
}
}
package com.android.futurediary;
import java.util.ArrayList;
import java.util.Calendar;
import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class TimePicker extends Activity implements OnClickListener
{
private TextView mTimeDisplay,mDateDisplay;
private Button mPickTime , mPickDate,savebut ;
private EditText specialtimeline ,enterevent;
private String providedeventname,providedeventdetails;
private String hour,minute,year,month,day;
private String time,date;
private ArrayList<EventDetailFinder> EventDetailFinderObjArrayList;
private int m,d,y;
final Calendar c = Calendar.getInstance();
private int mHour = c.get(Calendar.HOUR_OF_DAY);
private int mMinute = c.get(Calendar.MINUTE);
private int mYear = c.get(Calendar.YEAR);
private int mMonth =c.get(Calendar.MONTH);
private int mDay = c.get(Calendar.DAY_OF_MONTH);
static final int DATE_DIALOG_ID = 2;
static final int TIME_DIALOG_ID = 1;
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.noteentry);
// capture our View elements
specialtimeline=(EditText) findViewById(R.id.specialtime);
enterevent =(EditText) findViewById(R.id.entrynote);
mTimeDisplay = (TextView) findViewById(R.id.timeDisplay);
mPickTime = (Button) findViewById(R.id.timebut);
mDateDisplay = (TextView) findViewById(R.id.dateDisplay);
mPickDate = (Button) findViewById(R.id.datebut);
savebut = (Button)findViewById(R.id.addingnote);
savebut.setOnClickListener(this);
EventDetailFinderObjArrayList = new ArrayList<EventDetailFinder>();
// add a click listener to the button
mPickTime.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
showDialog(TIME_DIALOG_ID);
final Calendar c = Calendar.getInstance();
// get the current time
mHour = c.get(Calendar.HOUR_OF_DAY);
mMinute = c.get(Calendar.MINUTE);
updateDisplayTime();
}
});
mPickDate.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
// TODO Auto-generated method stub
showDialog(DATE_DIALOG_ID);
final Calendar p = Calendar.getInstance();
// display the current date
mYear = p.get(Calendar.YEAR);
mMonth = p.get(Calendar.MONTH);
mDay = p.get(Calendar.DAY_OF_MONTH);
updateDisplayDate();
}
});
}
//time part
private void updateDisplayTime()
{
// TODO Auto-generated method stub
mTimeDisplay.setText(
new StringBuilder()
.append(pad(mHour)).append(":")
.append(pad(mMinute)));
}
private static String pad(int p)
{
if(p > 9)
return String.valueOf(p);
else
return "0" + String.valueOf(p);
}
//date part
private void updateDisplayDate()
{
mDateDisplay.setText(
new StringBuilder()
// Month is 0 based so add 1
.append(mMonth + 1).append("-")
.append(mDay).append("-")
.append(mYear).append(" "));
m = mMonth + 1 ;
d = mDay ;
y= mYear;
}
private TimePickerDialog.OnTimeSetListener mTimeSetListener = new TimePickerDialog.OnTimeSetListener()
{
public void onTimeSet(android.widget.TimePicker view,int hourOfDay, int minute)
{
// TODO Auto-generated method stub
mHour = hourOfDay;
mMinute = minute;
updateDisplayTime();
}
};
private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() {
public void onDateSet(android.widget.DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
updateDisplayDate();
}
};
protected Dialog onCreateDialog(int id)
{
switch (id)
{
case TIME_DIALOG_ID:
return new TimePickerDialog(this,mTimeSetListener, mHour, mMinute, false);
case DATE_DIALOG_ID:
return new DatePickerDialog(this,mDateSetListener, mYear, mMonth, mDay);
}
return null;
}
public void onClick(View v)
{
if(v.getId() == R.id.addingnote)
{
mainevent();
}
}
public void mainevent()
{
providedeventname = (specialtimeline.getText().toString());
providedeventdetails =(enterevent.getText().toString());
hour = Integer.toString(mHour);
minute = Integer.toString(mMinute);
year = Integer.toString(y);
month = Integer.toString(m);
day = Integer.toString(d);
time = hour.concat(":").concat(minute);
date = month.concat("/").concat(day).concat("/").concat(year);
StorageDB openHelperClass = new StorageDB(this);
SQLiteDatabase sqliteDatabase = openHelperClass.getReadableDatabase();
Cursor cursor = sqliteDatabase.query(StorageDB.DIARY_EVENT_TABLE , null, null, null, null, null, null);
startManagingCursor(cursor);
cursor.moveToFirst();
EventDetailFinder EventDetailFinderObj = new EventDetailFinder();
EventDetailFinderObj.setEventName(providedeventname);
EventDetailFinderObj.setEventTime(time);
EventDetailFinderObj.setEventDate(date);
EventDetailFinderObj.setEventDetails(providedeventdetails);
//EventDetailFinderObj.setuGraduateEmail(providedUgraduateEmail);
EventDetailFinderObjArrayList.add(EventDetailFinderObj);
insertUndergraduate(EventDetailFinderObj);
}
public void insertUndergraduate(EventDetailFinder givenEventDetailFinderObj)
{
StorageDB storageeventObj = new StorageDB(this);
SQLiteDatabase sqliteDatabaseevent = storageeventObj.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(StorageDB.COLUMN_NAME_EVENT_NAME, givenEventDetailFinderObj.getEventName());
contentValues.put(StorageDB.COLLUMN_NAME_EVENTNOTE, givenEventDetailFinderObj.getEventDetails());
contentValues.put(StorageDB.COLLUMN_NAME_DATE, givenEventDetailFinderObj.getEventDate());
contentValues.put(StorageDB.COLLUMN_NAME_TIME, givenEventDetailFinderObj.getEventTime());
//long affectedColumnId = sqliteDatabaseevent.insert(StorageDB.DIARY_EVENT_TABLE, null, contentValues);
sqliteDatabaseevent.close();
}
}