<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.phonedata.MainActivity" >
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="通讯录"
android:textSize="40dp" />
<EditText
android:id="@+id/et2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/textView3"
android:layout_alignBottom="@+id/textView3"
android:layout_alignRight="@+id/button2"
android:layout_toRightOf="@+id/textView3"
android:ems="10" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/textView3"
android:layout_below="@+id/et2"
android:layout_marginTop="25dp"
android:text="添加" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button1"
android:layout_below="@+id/button2"
android:text="修改" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/button1"
android:layout_alignBottom="@+id/button1"
android:layout_alignRight="@+id/et1"
android:layout_marginRight="16dp"
android:text="查询" />
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/tv4"
android:layout_alignLeft="@+id/button2"
android:text="删除" />
<TextView
android:id="@+id/tv4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button3"
android:layout_below="@+id/button3"
android:layout_marginTop="18dp" />
<EditText
android:id="@+id/et1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/textView1"
android:layout_alignBottom="@+id/textView1"
android:layout_marginLeft="16dp"
android:layout_toRightOf="@+id/textView1"
android:ems="10" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView3"
android:layout_below="@+id/textView2"
android:text="姓名:"
android:textSize="20dp" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/et1"
android:text="电话号码:"
android:textSize="20dp" />
</RelativeLayout>
package com.example.phonedata;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends ActionBarActivity implements OnClickListener {
private EditText pname;
private EditText pphone;
private Button insert;
private Button query;
private Button update;
private Button delete;
private TextView tv;
MyHelper myhelper;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myhelper = new MyHelper(this);
init();
}
private void init() {
// TODO Auto-generated method stub
pname = (EditText) findViewById(R.id.et1);
pphone = (EditText) findViewById(R.id.et2);
insert = (Button) findViewById(R.id.button1);
query = (Button) findViewById(R.id.button2);
update = (Button) findViewById(R.id.button3);
delete = (Button) findViewById(R.id.button4);
tv=(TextView) findViewById(R.id.tv4);
insert.setOnClickListener(this);
query.setOnClickListener(this);
update.setOnClickListener(this);
delete.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String name, phone;
SQLiteDatabase db;
ContentValues values;
switch (v.getId()) {
case R.id.button1:
name = pname.getText().toString();
phone = pphone.getText().toString();
db = myhelper.getWritableDatabase();
values = new ContentValues();
values.put("name", name);
values.put("phone", phone);
db.insert("information", null, values);
Toast.makeText(this, "信息已添加成功", Toast.LENGTH_SHORT).show();
db.close();
break;
case R.id.button2:
db = myhelper.getReadableDatabase();
Cursor cursor = db.query("information", null, null, null, null, null, null);
if (cursor.getCount() == 0) {
tv.setText("");
Toast.makeText(this, "沒有数据", Toast.LENGTH_SHORT).show();
} else {
cursor.moveToFirst();
tv.setText("姓名:" + cursor.getString(1) + ";" + "电话号码:" + cursor.getString(2) + ";");
}
while (cursor.moveToNext()) {
tv.append("\n" + "姓名:" + cursor.getString(1) + ";" + "电话号码:" + cursor.getString(2) + ";");
}
cursor.close();
db.close();
break;
case R.id.button3:
db = myhelper.getWritableDatabase();
values = new ContentValues();
values.put("phone", phone=pphone.getText().toString());
db.update("information", values, "name=?", new String[] {pname.getText().toString()});
Toast.makeText(this, "信息已修改成功", Toast.LENGTH_SHORT).show();
db.close();
break;
case R.id.button4:
name = pname.getText().toString();
db=myhelper.getReadableDatabase();
db.delete("information", "name=?", new String[] {name});
Toast.makeText(this, "信息已刪除成功", Toast.LENGTH_SHORT).show();
db.close();
break;
}
}
}
package com.example.phonedata;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class MyHelper extends SQLiteOpenHelper{
public MyHelper(Context context) {
super(context, "itcast.db", null, 1);
// TODO Auto-generated constructor stub
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL("create table information (_id integer primary key autoincrement,name varchar(10),phone varchar(20))");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
}
}
![](https://img2018.cnblogs.com/blog/1785103/201911/1785103-20191104132408372-982559343.png)
![](https://img2018.cnblogs.com/blog/1785103/201911/1785103-20191104132418227-1167225011.png)
![](https://img2018.cnblogs.com/blog/1785103/201911/1785103-20191104132431001-1587094014.png)
![](https://img2018.cnblogs.com/blog/1785103/201911/1785103-20191104132436322-1273899637.png)