1、Android实验一实验报告ndroid实验一实验报告Android实验报告一 姓名:丁军峰班级:信科12-3学号:08123448一、实验内容 编写一个Android应用程序,实现对自己物品的管理,功能包括添加、删除和查询等二、实验目的 了解android开发流程,掌握SQLite数据库和ListView控件的使用三、需求分析使用SQLite数据库,使用ListView控件显示物品四、实验过程1.创建程序,设计用户交互界面 2.创建ListView Item布局 3.创建数据库 package com.LIQI.Stuff;import android.content.Context;imp
2、ort android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteDatabase.CursorFactory;import android.database.sqlite.SQLiteOpenHelper;public class MySQLiteOpenHelper extends SQLiteOpenHelper public MySQLiteOpenHelper(Context context ) super(context, LIQI.db, null, 1); / TODO Auto-ge
3、nerated constructor stub Override public void onCreate(SQLiteDatabase db) db.execSQL(create table LIQI(_id integer primary key autoincrement,stuff,amount,price); Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) / TODO Auto-generated method stub 4.创建account类package co
4、m.LIQI.Stuff;public class Stuff private String stuffName;private int StuffAmount;private float StuffPrice;public String getStuffName() return stuffName;public void setStuffName(String stuffName) this.stuffName = stuffName;public int getStuffAmount() return StuffAmount;public void setStuffAmount(int
5、stuffAmount) StuffAmount = stuffAmount;public float getStuffPrice() return StuffPrice;public void setStuffPrice(float stuffPrice) StuffPrice = stuffPrice;5.创建数据操作逻辑package com.LIQI.Stuff;import java.util.ArrayList;import java.util.List;import android.app.Activity;import android.database.Cursor;impor
6、t android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ImageButton;import android.widget.ImageView;import android.widget.ListView;import
7、android.widget.TextView;import android.widget.Toast;public class StuffList extends Activity private ListView lv; private SQLiteDatabase mDataBase; private ListstuffInfos; private MySQLiteOpenHelper mHelper; Overrideprotected void onCreate(Bundle savedInstanceState) setContentView(R.layout.show_all);
8、 mHelper=new MySQLiteOpenHelper(this); lv=(ListView) findViewById(R.id.id_lv); all(); super.onCreate(savedInstanceState); public void all() mDataBase=mHelper.getWritableDatabase(); Cursor cursor=mDataBase.query(LIQI, null, null, null, null, null, null); stuffInfos=new ArrayList(); while(cursor.moveT
9、oNext() Stuff stuff=new Stuff(); stuff.setStuffName(cursor.getString(1); stuff.setStuffAmount(cursor.getInt(2); stuff.setStuffPrice(cursor.getFloat(3); stuffInfos.add(stuff); cursor.close(); mDataBase.close(); lv.setAdapter( new Myadapter(); class Myadapter extends BaseAdapter Override public int ge
10、tCount() return stuffInfos.size(); 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; Override public View getView(final int position, View view , ViewGroup parent) view
11、=View.inflate(StuffList.this, R.layout.stuff_item, null); TextView tv_name=(TextView) view .findViewById(R.id.id_tv_name); TextView tv_amount=(TextView)view . findViewById(R.id.id_tv_amount); TextView tv_price=(TextView) view .findViewById(R.id.id_tv_price); ImageButton iButton=(ImageButton) view.fi
12、ndViewById(R.id.id_ib_delete); tv_name.setText(stuffInfos.get(position).getStuffName(); tv_amount.setText(数量(个)+stuffInfos.get(position).getStuffAmount(); tv_price.setText(单价(元)+stuffInfos.get(position).getStuffPrice(); iButton.setOnClickListener(new OnClickListener() Override public void onClick(Vi
13、ew v) mDataBase=mHelper.getWritableDatabase(); mDataBase.delete(LIQI,stuff=?, new String stuffInfos.get(position).getStuffName(); mDataBase.close(); stuffInfos.remove(position); Myadapter.this.notifyDataSetChanged(); ); return view; 6.编写界面交互代码package com.LIQI.Stuff;import android.app.Activity;import
14、 android.content.ContentValues;import android.content.Intent;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;public class M
15、ainActivity extends Activity implements OnClickListener private MySQLiteOpenHelper mHelper; private SQLiteDatabase mDataBase; private Button bt_add,bt_all; private EditText et_stuffName,et_stuffAmount,et_stuffPrice; Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInst
16、anceState); setContentView(R.layout.add_data); mHelper=new MySQLiteOpenHelper(this); initView(); initAction(); public void initView() et_stuffName=(EditText) findViewById(R.id.id_et_stuffname); et_stuffAmount=(EditText) findViewById(R.id.id_et_stuffamount); et_stuffPrice=(EditText) findViewById(R.id.id_et_stuffprize); bt_add=(Button) findViewById(R.id.id_bt_add); bt_all=(Button) findViewById(R.id.id_bt_all); public