Example1.java
Using java Syntax Highlighting
- package android.examples;
- import java.util.ArrayList;
- import java.util.List;
- import android.app.ListActivity;
- import android.content.Intent;
- import android.os.Bundle;
- import android.view.Menu;
- import android.view.View;
- import android.view.Menu.Item;
- import android.widget.ArrayAdapter;
- import android.widget.ListView;
- import bhuvana.android.examples.DBHelper.Row;
- public class Example1 extends ListActivity
- {
- private static final int ACTIVITY_CREATE=0;
- private static final int ACTIVITY_EDIT=1;
- public static final String KEY_TITLE = "title";
- public static final String KEY_BODY = "body";
- public static final String KEY_ROW_ID = "rowid";
- private static final int INSERT_ID = Menu.FIRST;
- private static final int DELETE_ID = Menu.FIRST + 1;
- private DBHelper dbHelper;
- private List<Row> rows;
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle icicle)
- {
- super.onCreate(icicle);
- setContentView(R.layout.notes_list);
- dbHelper = new DBHelper(this);
- fillData();
- }
- private void fillData() {
- // We need a list of strings for the list items
- List<String> items = new ArrayList<String>();
- // Get all of the rows from the database and create the item list
- rows = dbHelper.fetchAllRows();
- for (Row row : rows) {
- items.add(row.title);
- }
- // Now create an array adapter and set it to display using our row
- ArrayAdapter<String> notes =
- new ArrayAdapter<String>(this, R.layout.notes_row, items);
- setListAdapter(notes);
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- super.onCreateOptionsMenu(menu);
- menu.add(0, INSERT_ID, R.string.menu_insert);
- menu.add(0, DELETE_ID, R.string.menu_delete);
- return true;
- }
- @Override
- public boolean onMenuItemSelected(int featureId, Item item) {
- super.onMenuItemSelected(featureId, item);
- switch(item.getId()) {
- case INSERT_ID:
- createNote();
- break;
- case DELETE_ID:
- dbHelper.deleteRow(rows.get(getSelection()).rowId);
- fillData();
- break;
- }
- return true;
- }
- private void createNote() {
- Intent i = new Intent(this, NoteEdit.class);
- startSubActivity(i, ACTIVITY_CREATE);
- }
- @Override
- protected void onListItemClick(ListView l, View v, int position, long id) {
- super.onListItemClick(l, v, position, id);
- Intent i = new Intent(this, NoteEdit.class);
- i.putExtra(KEY_ROW_ID, rows.get(position).rowId);
- startSubActivity(i, ACTIVITY_EDIT);
- }
- @Override
- protected void onActivityResult(int requestCode, int resultCode, String data, Bundle extras) {
- super.onActivityResult(requestCode, resultCode, data, extras);
- fillData();
- }
- }
Parsed in 0.043 seconds, using GeSHi 1.0.8.4
NoteEdit.java
Using java Syntax Highlighting
- package android.examples;
- import java.util.Calendar;
- import android.app.Activity;
- import android.app.TimePickerDialog;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.TextView;
- import android.widget.TimePicker;
- public class NoteEdit extends Activity {
- private EditText titleText;
- private EditText bodyText;
- private EditText subtitleText;
- private TextView DateDisplay;
- private Long rowId;
- private int myhour;
- private int myminute;
- private DBHelper dbHelper;
- @Override
- protected void onCreate(Bundle icicle) {
- super.onCreate(icicle);
- dbHelper = new DBHelper(this);
- setContentView(R.layout.note_edit);
- titleText = (EditText) findViewById(R.id.title);
- bodyText = (EditText) findViewById(R.id.body);
- subtitleText = (EditText) findViewById(R.id.subtitle);
- DateDisplay=(TextView) findViewById(R.id.dateDisplay);
- Button confirmButton = (Button) findViewById(R.id.confirm);
- Button picktime = (Button) findViewById(R.id.pickTime);
- rowId = icicle != null ? icicle.getLong(Example1.KEY_ROW_ID) : null;
- if (rowId == null) {
- Bundle extras = getIntent().getExtras();
- rowId = extras != null ? extras.getLong(Example1.KEY_ROW_ID) : null;
- }
- populateFields();
- final Calendar c = Calendar.getInstance();
- myhour = c.get(Calendar.HOUR_OF_DAY);
- myminute = c.get(Calendar.MINUTE);
- updateDisplay();
- confirmButton.setOnClickListener(new View.OnClickListener() {
- public void onClick(View arg0) {
- setResult(RESULT_OK);
- finish();
- }
- });
- picktime.setOnClickListener(new View.OnClickListener() {
- public void onClick(View v) {
- new TimePickerDialog(NoteEdit.this,
- mTimeSetListener, "Set the time",
- myhour, myminute, false).show();
- }
- });
- }
- private void populateFields() {
- if (rowId != null) {
- DBHelper.Row row = dbHelper.fetchRow(rowId);
- if (row.rowId > -1) {
- titleText.setText(row.title);
- bodyText.setText(row.body);
- subtitleText.setText(row.subtitle);
- myhour=row.hour;
- myminute=row.minute;
- }
- }
- }
- @Override
- protected void onFreeze(Bundle outState) {
- super.onFreeze(outState);
- outState.putLong(Example1.KEY_ROW_ID, rowId);
- }
- @Override
- protected void onPause() {
- super.onPause();
- saveState();
- dbHelper.close();
- dbHelper = null;
- }
- @Override
- protected void onResume() {
- super.onResume();
- if (dbHelper == null) {
- dbHelper = new DBHelper(this);
- }
- populateFields();
- }
- private void saveState() {
- String title = titleText.getText().toString();
- String body = bodyText.getText().toString();
- String subtitle = titleText.getText().toString();
- int sethour=myhour;
- int setminute=myminute;
- if (rowId == null) {
- dbHelper.createRow(title, body, subtitle,sethour,setminute);
- } else {
- dbHelper.updateRow(rowId, title, body, subtitle,sethour,setminute);
- }
- }
- private TimePicker.OnTimeSetListener mTimeSetListener =
- new TimePicker.OnTimeSetListener() {
- public void timeSet(TimePicker view, int hourOfDay, int minute) {
- myhour = hourOfDay;
- myminute = minute;
- updateDisplay();
- }
- };
- private void updateDisplay() {
- DateDisplay.setText(
- new StringBuilder()
- .append(pad(myhour)).append(":")
- .append(pad(myminute)));
- }
- private static String pad(int c) {
- if (c >= 10)
- return String.valueOf(c);
- else
- return "0" + String.valueOf(c);
- }
- }
Parsed in 0.049 seconds, using GeSHi 1.0.8.4
DBHelper.java
Using java Syntax Highlighting
- package android.examples;
- import java.io.FileNotFoundException;
- import java.util.ArrayList;
- import java.util.List;
- import android.content.ContentValues;
- import android.content.Context;
- import android.database.Cursor;
- import android.database.SQLException;
- import android.database.sqlite.SQLiteDatabase;
- import android.util.Log;
- public class DBHelper {
- class Row extends Object {
- public String body;
- public long rowId;
- public String title;
- public String subtitle;
- public int hour;
- public int minute;
- }
- private static final String DATABASE_CREATE =
- "create table todo2 (rowid integer primary key autoincrement, "
- + "title text not null, body text not null, hour integer, minute integer);";
- private static final String DATABASE_NAME = "data2";
- private static final String DATABASE_TABLE = "todo2";
- private static final int DATABASE_VERSION = 1;
- private SQLiteDatabase db;
- public DBHelper(Context ctx) {
- try {
- db = ctx.openDatabase(DATABASE_NAME, null);
- } catch (FileNotFoundException e) {
- try {
- db =
- ctx.createDatabase(DATABASE_NAME, DATABASE_VERSION, 0,
- null);
- db.execSQL(DATABASE_CREATE);
- } catch (FileNotFoundException e1) {
- db = null;
- }
- }
- }
- public void close() {
- db.close();
- }
- public void createRow(String title, String body,String subtitle,int hour,int minute) {
- ContentValues initialValues = new ContentValues();
- initialValues.put("title", title);
- initialValues.put("body", body);
- initialValues.put("subtitle", subtitle);
- initialValues.put("hour", hour);
- initialValues.put("minute", minute);
- db.insert(DATABASE_TABLE, null, initialValues);
- }
- public void deleteRow(long rowId) {
- db.delete(DATABASE_TABLE, "rowid=" + rowId, null);
- }
- public List<Row> fetchAllRows() {
- ArrayList<Row> ret = new ArrayList<Row>();
- try {
- Cursor c =
- db.query(DATABASE_TABLE, new String[] {
- "rowid", "title", "body","subtitle","hour","minute"}, null, null, null, null, null);
- int numRows = c.count();
- c.first();
- for (int i = 0; i < numRows; ++i) {
- Row row = new Row();
- row.rowId = c.getLong(0);
- row.title = c.getString(1);
- row.body = c.getString(2);
- row.subtitle = c.getString(3);
- row.hour=c.getInt(4);
- row.minute=c.getInt(5);
- ret.add(row);
- c.next();
- }
- } catch (SQLException e) {
- Log.e("booga", e.toString());
- }
- return ret;
- }
- public Row fetchRow(long rowId) {
- Row row = new Row();
- Cursor c =
- db.query(true, DATABASE_TABLE, new String[] {
- "rowid", "title", "body","subtitle","hour","minute"}, "rowid=" + rowId, null, null,
- null, null);
- if (c.count() > 0) {
- c.first();
- row.rowId = c.getLong(0);
- row.title = c.getString(1);
- row.body = c.getString(2);
- row.subtitle = c.getString(3);
- row.hour=c.getInt(4);
- row.minute=c.getInt(5);
- return row;
- } else {
- row.rowId = -1;
- row.body = row.title = row.subtitle=null;
- row.hour=row.minute=0;
- }
- return row;
- }
- public void updateRow(long rowId, String title, String body, String subtitle,int hour,int minute) {
- ContentValues args = new ContentValues();
- args.put("title", title);
- args.put("body", body);
- args.put("subtitle", subtitle);
- args.put("hour",hour);
- args.put("minute", minute);
- db.update(DATABASE_TABLE, args, "rowid=" + rowId, null);
- }
- }
Parsed in 0.052 seconds, using GeSHi 1.0.8.4

