![]()
![]()
![]()
<LinearLayout 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"
android:orientation="vertical"
android:background="#e6e6e6"
tools:context="com.example.shopping.MainActivity" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:orientation="horizontal"
android:background="#ffffff"
android:layout_marginTop="10dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="名称:"
android:textSize="20sp"
android:layout_gravity="center"
/>
<EditText
android:id="@+id/ed_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:layout_gravity="center"
android:background="#ffffff"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:orientation="horizontal"
android:background="#ffffff"
android:layout_marginTop="10dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="价格:"
android:textSize="20sp"
android:layout_gravity="center"
/>
<EditText
android:id="@+id/ed_price"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:layout_gravity="center"
android:background="#ffffff"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:orientation="horizontal"
android:background="#ffffff"
android:layout_marginTop="10dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="数量:"
android:textSize="20sp"
android:layout_gravity="center"
/>
<EditText
android:id="@+id/ed_amount"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:layout_gravity="center"
android:background="#ffffff"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp"
>
<Button
android:id="@+id/bu_add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="增加"
android:layout_marginLeft="15dp"/>
<Button
android:id="@+id/bu_delete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="删除"/>
<Button
android:id="@+id/bu_updata"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="修改"/>
<Button
android:id="@+id/bu_query"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="查询"/>
</LinearLayout>
<ListView
android:id="@+id/lv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
></ListView>
</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="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:orientation="horizontal"
android:background="#ffffff"
android:layout_marginTop="10dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="名称:"
android:textSize="20sp"
android:layout_gravity="center"
/>
<TextView
android:id="@+id/tv_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:layout_gravity="center"
android:background="#ffffff"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:orientation="horizontal"
android:background="#ffffff"
android:layout_marginTop="10dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="价格:"
android:textSize="20sp"
android:layout_gravity="center"
/>
<TextView
android:id="@+id/tv_price"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:layout_gravity="center"
android:background="#ffffff"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:orientation="horizontal"
android:background="#ffffff"
android:layout_marginTop="10dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="数量:"
android:textSize="20sp"
android:layout_gravity="center"
/>
<TextView
android:id="@+id/tv_amount"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:layout_gravity="center"
android:background="#ffffff"/>
</LinearLayout>
</LinearLayout>
package com.example.shopping;
import java.util.ArrayList;
import com.example.adapter.shopAdapter;
import com.example.bean.shopBean;
import Database.SQLiteHelpe;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.Toast;
public class MainActivity extends Activity implements View.OnClickListener {
private static final Context Context = null;
private EditText mName;
private EditText mPrice;
private EditText mAmount;
private ArrayList<shopBean> list;
ListView mLv;
private SQLiteHelpe mSQLiteHelpe = new SQLiteHelpe(this);
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
init();
}
public void init() {
mName = (EditText)findViewById(R.id.ed_name);
mPrice = (EditText)findViewById(R.id.ed_price);
mAmount = (EditText)findViewById(R.id.ed_amount);
Button add = (Button) findViewById(R.id.bu_add);
Button delect = (Button) findViewById(R.id.bu_delete);
Button updata = (Button) findViewById(R.id.bu_updata);
Button query = (Button) findViewById(R.id.bu_query);
add.setOnClickListener(this);
delect.setOnClickListener(this);
updata.setOnClickListener(this);
query.setOnClickListener(this);
mLv = (ListView) findViewById(R.id.lv);
list = mSQLiteHelpe.Query();
shopAdapter adapter = new shopAdapter(list);
mLv.setAdapter(adapter);
}
@Override
public void onClick(View v) {
String name = mName.getText().toString();
String price = mPrice.getText().toString();
String amounts = mAmount.getText().toString();
switch (v.getId()) {
case R.id.bu_add:
if(mSQLiteHelpe.Insert(name, price, amounts)){
Toast.makeText(this, "添加成功", 0).show();
list = mSQLiteHelpe.Query();
shopAdapter adapter = new shopAdapter(list);
mLv.setAdapter(adapter);
}else {
Toast.makeText(this, "添加失败", 0).show();
}
break;
case R.id.bu_delete:
if(mSQLiteHelpe.Delect(name)) {
Toast.makeText(this, "删除成功", 0).show();
list = mSQLiteHelpe.Query();
shopAdapter adapter = new shopAdapter(list);
mLv.setAdapter(adapter);
}else {
Toast.makeText(this, "删除失败", 0).show();
}
break;
case R.id.bu_updata:
if(mSQLiteHelpe.Upadta(name, price, amounts)) {
Toast.makeText(this, "修改成功", 0).show();
list = mSQLiteHelpe.Query();
shopAdapter adapter = new shopAdapter(list);
mLv.setAdapter(adapter);
}else {
Toast.makeText(this, "修改失败", 0).show();
}
break;
case R.id.bu_query:
list = mSQLiteHelpe.Query();
shopAdapter adapter = new shopAdapter(list);
mLv.setAdapter(adapter);
break;
}
}
}
package com.example.utils;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
import android.provider.BaseColumns;
public class DBUtils extends SQLiteOpenHelper implements BaseColumns {
private String DATABASE_NAME="Shopping";
public static final String DATABASE_TABLE="Shop";
public static final int DATABASE_VERSION=1;
// 数据库中的列名
public static final String SHOP_NAME="name";
public static final String SHOP_PRICE="price";
public static final String SHOP_AMOUNTS="amounts";
public DBUtils(Context context) {
super(context, DATABASE_TABLE, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table "+DATABASE_TABLE+""
+ "("+_ID+" integer primary Key autoincrement, "+SHOP_NAME+" text,"+SHOP_PRICE+" text,"+SHOP_AMOUNTS+" text)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
}
}
package Database;
import java.util.ArrayList;
import java.util.List;
import com.example.bean.shopBean;
import com.example.utils.DBUtils;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;
public class SQLiteHelpe {
private static DBUtils mDBUtils;
public SQLiteHelpe(Context c) {
mDBUtils = new DBUtils(c);
}
// 保存
static public boolean Insert (String name,String price,String amounts) {
SQLiteDatabase db =mDBUtils.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(DBUtils.SHOP_NAME, name);
values.put(DBUtils.SHOP_PRICE, price);
values.put(DBUtils.SHOP_AMOUNTS, amounts);
long Insertid =db.insert(DBUtils.DATABASE_TABLE, null, values);
return Insertid!=0;
}
// 删除
static public boolean Delect (String name) {
SQLiteDatabase db =mDBUtils.getWritableDatabase();
int DeleteId =db.delete(DBUtils.DATABASE_TABLE, DBUtils.SHOP_NAME+"=?", new String[] {name});
return DeleteId!=0;
}
// 修改
static public boolean Upadta(String name,String price ,String amounts) {
SQLiteDatabase db =mDBUtils.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("price", price);
values.put("amounts", amounts);
int UpdataId =db.update(DBUtils.DATABASE_TABLE, values , DBUtils.SHOP_NAME+"=?", new String[] {name});
return UpdataId!=0;
}
// 查询
static public ArrayList<shopBean> Query() {
ArrayList<shopBean> list = new ArrayList<shopBean>();
SQLiteDatabase db =mDBUtils.getReadableDatabase();
Cursor cursor =db.query(DBUtils.DATABASE_TABLE, null, null, null, null, null, null);
if(cursor!=null) {
while (cursor.moveToNext()) {
shopBean bean = new shopBean();
String id =cursor.getString(cursor.getColumnIndex(DBUtils._ID));
String name = cursor.getString(cursor.getColumnIndex(DBUtils.SHOP_NAME));
String price =cursor.getString(cursor.getColumnIndex(DBUtils.SHOP_PRICE));
String amounts =cursor.getString(cursor.getColumnIndex(DBUtils.SHOP_AMOUNTS));
bean.setId(id);
bean.setName(name);
bean.setPrice(price);
bean.setAmounts(amounts);
list.add(bean);
}
cursor.close();
}
return list;
}
}
package com.example.bean;
public class shopBean {
private String id;
private String name;
private String price;
private String amounts;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPrice() {
return price;
}
public void setPrice(String price) {
this.price = price;
}
public String getAmounts() {
return amounts;
}
public void setAmounts(String amounts) {
this.amounts = amounts;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
package com.example.adapter;
import java.util.ArrayList;
import com.example.bean.shopBean;
import com.example.shopping.R;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
public class shopAdapter extends BaseAdapter {
private ArrayList<shopBean> mList;
public shopAdapter(ArrayList<shopBean> list) {
// TODO Auto-generated constructor stub
mList = list;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mList!=null?mList.size():0;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
class ViewHoder{
TextView name;
TextView price;
TextView amounts;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHoder hoder =null;
if(convertView==null) {
convertView = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_main, null);
hoder = new ViewHoder();
hoder.name = (TextView) convertView.findViewById(R.id.tv_name);
hoder.price = (TextView) convertView.findViewById(R.id.tv_price);
hoder.amounts = (TextView) convertView.findViewById(R.id.tv_amount);
convertView.setTag(hoder);
}else {
hoder = (ViewHoder) convertView.getTag();
}
hoder.name.setText(mList.get(position).getName());
hoder.price.setText(mList.get(position).getPrice());
hoder.amounts.setText(mList.get(position).getAmounts());;
return convertView;
}
}