日期:2014-05-16 浏览次数:20742 次
java:
package EX05_05.txt;
import android.R.anim;
import android.R.integer;
import android.app.Activity;
import android.database.Cursor;
import android.database.sqlite.SQLiteCursor;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
public class EX05_05 extends Activity {
private ToDoDB mToDoDB;
private Cursor mCursor;
private EditText mEditText;
private ListView mListView;
private int _id;
protected final static int MENU_ADD = Menu.FIRST;
protected final static int MENU_EDIT = Menu.FIRST + 1;
protected final static int MENU_DELEST = Menu.FIRST + 2;
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
super.onOptionsItemSelected(item);
switch (item.getItemId()) {
case MENU_ADD:
addTodo();
break;
case MENU_EDIT:
editTodo();
break;
case MENU_DELEST:
deleteTodo();
break;
}
return true;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
super.onCreateOptionsMenu(menu);
menu.add(Menu.NONE, MENU_ADD, 0, "添加");
menu.add(Menu.NONE, MENU_EDIT, 0, "修改");
menu.add(Menu.NONE, MENU_DELEST, 0, "删除");
return true;
}
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
initApp();
}
private void initApp() {
// TODO Auto-generated method stub
mEditText = (EditText)findViewById(R.id.EditText01);
mListView = (ListView)findViewById(R.id.ListView01);
mToDoDB = new ToDoDB(this);
mCursor = mToDoDB.select();
SimpleCursorAdapter adapter = new SimpleCursorAdapter
(this, android.R.layout.simple_list_item_1,
mCursor, new String[]{ToDoDB.FIELD_TEXT},
new int[]{R.id.ListView01});
mListView.setAdapter(adapter);
mEditText.setOnClickListener(new EditText.OnClickListener()
{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
mEditText.setText("");
}
});
mListView.setOnItemClickListener(new ListView.OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
mCursor.moveToPosition(arg2);
_id = mCursor.getInt(0);
mEditText.setText(mCursor.getString(1)+Integer.toString(_id));
}
});
mListView.setOnItemSelectedListener(new ListView.OnItemSelectedListener()
{
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
// TODO Auto-generated method stub
SQLiteCursor sc = (SQLiteCursor)arg0.getSelectedItem();
_id = sc.getInt(0);
mEditText.setText(sc.getString(1)+Integer.toString(_id));
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
}
private void addTodo()
{
if (mEditText.getText().toString().equals("")) {
return;
}
mToDoDB.insert(mEditText.getText().toString());
mCursor.requery();
mListView.invalidateViews();
_id = 0;
mEditText.setText("");
}
private void editTodo()
{
if (mEditText.getText().toString().equals("")) {
return;
}
mToDoDB.update(_id, mEditText.getText().toString());
mCursor.requery();
mListView.invalidateViews();
_id = 0;
mEditText.setText("");
}
private void deleteTodo()
{
if (_id == 0) {
return;
}
mToDoDB.delete(_id);
mCursor.requery();
mListView.invalidateViews();
_id = 0;
}
}
ToDoDB.java: