package com.example.acud;
import java.util.ArrayList;
import java.util.List;
import android.os.Bundle;
import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void add(View v) {
StuOpenHelper helper = new StuOpenHelper(this);
SQLiteDatabase db = helper.getWritableDatabase();
String name = ((EditText) findViewById(R.id.et_name)).getText()
.toString();
int age = Integer.parseInt(((EditText) findViewById(R.id.et_age))
.getText().toString());
// 原生sql操作,
// db.execSQL("insert into stuinfo (name,age) values('lisi',22)");
// db.execSQL("insert into stuinfo (name,age) values(?,?)",new
// Object[]{"kitty",30});
db.execSQL("insert into stuinfo (name,age) values(?,?)", new Object[] {
name,age });
Toast.makeText(this, "ok", 0).show();
//google API操作 见教材P124,更推荐用这种
}
public void delete(View view) {
StuOpenHelper helper = new StuOpenHelper(this);
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("delete from stuinfo where _id=?", new Object[] { 2 });
Toast.makeText(this, "删除成功", 0).show();
}
public void update(View view) {
StuOpenHelper helper = new StuOpenHelper(this);
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("update stuinfo set name=? where _id=?", new Object[] {
"micky", 3 });
Toast.makeText(this, "修改成功", 0).show();
}
//定义学生集合
List<Student> list=new ArrayList<Student>();
public void search(View view) {
System.out.println(list.size()+"在search里");
StuOpenHelper helper = new StuOpenHelper(this);
SQLiteDatabase db = helper.getWritableDatabase();
// String s = "";
Cursor cursor = db.rawQuery("select * from stuinfo", null);
if (cursor.getCount() != 0) {
//每循环一次,创建一个学生对象并添加到集合中
while (cursor.moveToNext()) {
// s += cursor.getInt(0) + " " + cursor.getString(1) + " "
// + cursor.getInt(2) + "\n";
Student s1=new Student();
s1.setId(cursor.getInt(0));
s1.setName(cursor.getString(1));
s1.setAge(cursor.getInt(2));
list.add(s1);
}
}
ListView lv=(ListView) findViewById(R.id.lv1);
lv.setAdapter(new myadapter());
// Toast.makeText(this, s, 0).show();
// ((TextView) (findViewById(R.id.tv_show))).setText(s);
}
private class myadapter extends BaseAdapter{
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
@Override
public View getView(int position, View convertView, ViewGroup arg2) {
// TODO Auto-generated method stub
View view=View.inflate(MainActivity.this, R.layout.list_item, null);
TextView tvid=(TextView)view.findViewById(R.id.tv_id);
TextView tvname=(TextView)view.findViewById(R.id.tv_name);
TextView tvage=(TextView) view.findViewById(R.id.tv_age);
System.out.println(list.get(position).getId());
tvid.setText(list.get(position).getId()+"");
tvname.setText(list.get(position).getName());
tvage.setText(list.get(position).getAge()+"");
// tvid.setText("aa");
// tvname.setText("bb");
// tvage.setText("cc");
return view;
}
@Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return 0;
}
}
}
package com.example.acud;
public class Student {
private int id;
private String name;
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
package com.example.acud;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class StuOpenHelper extends SQLiteOpenHelper {
public StuOpenHelper(Context context) {
super(context, "stu.db", null, 1);
// TODO Auto-generated constructor stub
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL("create table stuinfo(_id integer primary key autoincrement,name varchar(20),age integer)");
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
// TODO Auto-generated method stub
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="16dp" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="130dp" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="姓 名 :"
android:textSize="18sp" />
<EditText
android:id="@+id/et_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入姓名"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="年 龄:"
android:textSize="18sp" />
<EditText
android:id="@+id/et_age"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="输入年龄"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<Button
android:id="@+id/btn_add"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginRight="2dp"
android:layout_weight="1"
android:background="#B9B9FF"
android:onClick="add"
android:text="添加"
android:textSize="18sp" />
<Button
android:id="@+id/btn_query"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginRight="2dp"
android:layout_weight="1"
android:background="#DCB5FF"
android:onClick="search"
android:text="查询"
android:textSize="18sp" />
<Button
android:id="@+id/btn_update"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginRight="2dp"
android:layout_weight="1"
android:background="#E6CAFF"
android:onClick="update"
android:text="修改"
android:textSize="18sp" />
<Button
android:id="@+id/btn_delete"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="#ACD6FF"
android:onClick="delete"
android:text="删除"
android:textSize="18sp" />
</LinearLayout>
<ListView
android:id="@+id/lv1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="25dp"
android:textSize="20sp" />
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<TextView
android:id="@+id/tv_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="1" />
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="2" />
<TextView
android:id="@+id/tv_age"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="3" />
</LinearLayout>
![]()