1.首先看一下界面效果和功能
点了Menu键后弹出增加和查询按钮
选中增加并增加一些内容,点确认即可显示到listview上
长按选中item会弹出删除和修改选项,删除就会删掉选中的item
点了编辑就会显示后会得到item的值,并可以修改它
2.实现思路
- 在oncreate方法中调用SQLiteOpenHelper创建数据库
- 创建一个数据库操作类,里面有曾删改等方法
- 在主界面调用增删改方法对界面上的数据进行操作
3.具体实现
数据库操作类的代码
package android.jim.com.dbstorage;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
/**
* Created by huangjim on 7/22/2015.
*/
public class DBStorageDemo {
private Context mContext;
private SQLiteDatabase mSQLiteDatabase;
//public final String DATABASE_NAME="userInfo";
public final static String TABLE_NAME="users2";
public final static String USER_NAME="userName";
public final static String USER_ADDRESS = "userAddress";
public DBStorageDemo(Context _Context){
this.mContext=_Context;
}
//创建和打开数据库
public void openOrCreateDatabase(){
MyDatabaseOpenHelper openHelper=new MyDatabaseOpenHelper(mContext,TABLE_NAME,null,1);
mSQLiteDatabase=openHelper.getReadableDatabase();
}
//关闭数据库
public void closeUser(){
mSQLiteDatabase.close();
//mSQLiteDatabase=null;
}
//添加用户
public long insertUser(Users users){
if (mSQLiteDatabase!=null&&users!=null) {
ContentValues _ContentValues = new ContentValues();
_ContentValues.put(USER_NAME, users.getUserName());
_ContentValues.put(USER_ADDRESS, users.getUserAddress());
return mSQLiteDatabase.insert(TABLE_NAME, "", _ContentValues);
}
/* mSQLiteDatabase.execSQL("insert into TABLE_NAME values(null,?.?)",
new String[]{users.getUserName(),users.getUserAddress()});*/
return -1;
}
//返回整个表的游标
public Cursor selectAll(){
//return mSQLiteDatabase.rawQuery("select * from TABLE_NAME",null);
if (mSQLiteDatabase!=null) {
return mSQLiteDatabase.query(TABLE_NAME, ne