Android数据库的增删改查和ListView以及页面跳转的实现(二)

2015-02-02 20:09:26 · 作者: · 浏览: 40
db=dbOpenHelper.getWritableDatabase(); db.execSQL("update person set name=?,phone=?,amount=? where id=?", new Object[]{person.getName(),person.getPhone(),person.getAmount(),person.getId()}); } public Person find(Integer id){ SQLiteDatabase db=dbOpenHelper.getReadableDatabase(); Cursor cursor=db.rawQuery("select * from person where id=?", new String[]{id.toString()}); if(cursor.moveToFirst()) { int personid=cursor.getInt(cursor.getColumnIndex("id")); String name=cursor.getString(cursor.getColumnIndex("name")); String phone=cursor.getString(cursor.getColumnIndex("phone")); int money=cursor.getInt(cursor.getColumnIndex("amount")); return new Person(personid,name,phone,money); } cursor.close(); return null; } public List getScrollData(int offset,int maxResult){ List persons=new ArrayList(); SQLiteDatabase db=dbOpenHelper.getReadableDatabase(); Cursor cursor=db.rawQuery("select * from person order by id asc limit ?,?", new String[]{String.valueOf(offset),String.valueOf(maxResult)}); while(cursor.moveToNext()) { int personid=cursor.getInt(cursor.getColumnIndex("id")); String name=cursor.getString(cursor.getColumnIndex("name")); String phone=cursor.getString(cursor.getColumnIndex("phone")); int money=cursor.getInt(cursor.getColumnIndex("amount")); persons.add(new Person(personid,name,phone,money)); } cursor.close(); return persons; } public long getCount() { SQLiteDatabase db=dbOpenHelper.getReadableDatabase(); Cursor cursor=db.rawQuery("select count(*) from person",null); cursor.moveToFirst(); long result=cursor .getLong(0); return result; } }

Android工程的主界面,可以输入姓名、电话和存款。点击保存按钮能够实现将以上数据保存到sqlite
数据库
中。并且设置了一个显示数据库数据按钮,能够将数据显示到ListView控件中,实现页面跳转。

import dbSQLiteOPenHelper.db.dao.PersonDao;
import dbSQLiteOPenHelper.db.domain.Person;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {
	Button listDate=null;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		listDate=(Button) findViewById(R.id.list_show);
		listDate.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				Intent intent=new Intent();
				intent.setClass(MainActivity.this, SecondActivity.class);
				startActivity(intent);
				
				
			}
		});
		
	}
	public void testSave(View v) throws Exception{
		EditText nameText=(EditText)findViewById(R.id.name);
		EditText phoneText=(EditText)findViewById(R.id.phone);
		EditText amountText=(EditText)findViewById(R.id.amount);
		String name=nameText.getText().toString();
		String phone=phoneText.getText().toString();
		int amount=Integer.parseInt(amountText.getText().toString());
		PersonDao per