Android实验报告_基于SQLite的通信录_第1页
Android实验报告_基于SQLite的通信录_第2页
Android实验报告_基于SQLite的通信录_第3页
Android实验报告_基于SQLite的通信录_第4页
Android实验报告_基于SQLite的通信录_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一次实验 android界面设计一. 实验目的及实验环境1. 实验目的1)掌握sqliteopenhelper类结构2)掌握基于sqlite数据库的应用开发过程3)掌握content provider发布数据的方法4)掌握content resolver获取数据的方法2.实验环境系统开发平 android studio 3.0系统开发平台:android 7.1运行平台:windows10 x64运行环境:microsoft.net framework sdk 2.0二. 实验教材、组织方式、实验内容1.实验教材: andorid开发与应用2.组织方式:个人独立完成2.实验内容:实现基于sq

2、lite数据库的通信录应用,通过单击增加图标打开添加通信录界面,通过单击通信录中的各条信息可删除选中项。三方案设计android系统中集成了sqlite数据库,并且为数据库的操作提供了相关的类和方法,便于没有数据库开发经验的开发者编写程序。另外,android平台中利用content provider机制来实现跨应用程序数据共享。一个应用程序可以通过content provider来发布自己的数据,其他的应用程序可以通过content resolver来获取共享数据。四运行结果五总结通过这次实验掌握了sqlite openhelper类结构,掌握了基于sqlite数据库的应用开发过程以及con

3、tent provider发布数据的方法和掌握content resolver获取数据的方法。六附录:源代码 主布局文件activity_main.xml:linearlayout xmlns:android=/apk/res/android 添加联系人布局文件addrelation.xml: 主activity文件mainactivity.java:import android.support.v7.app.actionbaractivity;import android.app.alertdialog;import android.app.

4、application;import android.content.dialoginterface;import android.content.intent;import android.database.cursor;import android.os.bundle;import android.view.menu;import android.view.menuitem;import android.view.view;import android.widget.adapterview;import android.widget.listview;import android.widg

5、et.simplecursoradapter;public class mainactivity extends actionbaractivity private listview listview;protected void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate);setcontentview(r.layout.activity_main);listview = (listview) findviewbyid(r.id.listview);/ getrelationfromdb();pr

6、ivate void getrelationfromdb() final databasehelper dbhelper = new databasehelper(this);cursor cursor = dbhelper.query();string from = _id, name, tel, groupname ;int to = r.id._id, r., r.id.tel, r.id.group ;simplecursoradapter scadapter = new simplecursoradapter(this,r.layout.relationlist, cu

7、rsor, from, to);listview.setadapter(scadapter);listview.setonitemclicklistener(new adapterview.onitemclicklistener() public void onitemclick(adapterview adapter, view view,int position, long id) final long temp = id;alertdialog.builder adbuilder = new alertdialog.builder(mainactivity.this);adbuilder

8、.setmessage(确认要删除记录吗?).setpositivebutton(确认,new dialoginterface.onclicklistener() overridepublic void onclick(dialoginterface dialog,int which) / todo auto-generated method stubdbhelper.del(int) temp);cursor cursor = dbhelper.query();string from = _id, name, tel,groupname ;int to = r.id._id, r.id.na

9、me,r.id.tel, r.id.group ;simplecursoradapter scadapter = new simplecursoradapter (getapplicationcontext(),r.layout.relationlist, cursor,from, to);mainactivity.this.listview.setadapter(scadapter);).setnegativebutton(取消,new dialoginterface.onclicklistener() overridepublic void onclick(dialoginterface

10、dialog,int which) );alertdialog aleradialog = adbuilder.create();aleradialog.show(););dbhelper.close();public void add(view view) intent intent = new intent(mainactivity.this, addrelationactivity.class);startactivityforresult(intent, 0x111);protected void onactivityresult(int requestcode, int result

11、code, intent data) super.onactivityresult(requestcode, resultcode, data);if (requestcode = 0x111 & resultcode = 0x111) getrelationfromdb();overridepublic boolean oncreateoptionsmenu(menu menu) / inflate the menu; this adds items to the action bar if it is present.getmenuinflater().inflate(r.menu.mai

12、n, menu);return true;overridepublic boolean onoptionsitemselected(menuitem item) / handle action bar item clicks here. the action bar will/ automatically handle clicks on the home/up button, so long/ as you specify a parent activity in androidm id = item.getitemid();if (id = r.id.acti

13、on_settings) return true;return super.onoptionsitemselected(item);添加联系人addrelationactivity.javaimport android.app.activity;import android.app.alertdialog;import android.content.contentvalues;import android.content.dialoginterface;import android.content.intent;import android.os.bundle;import android.

14、view.view;import android.widget.edittext;import android.widget.spinner;public class addrelationactivity extends activity private edittext addname, addtel;private spinner addgroup;protected void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate);setcontentview(r.layout.addrelation

15、);addname = (edittext) findviewbyid(r.id.addname);addtel = (edittext) findviewbyid(r.id.addtel);addgroup = (spinner) findviewbyid(r.id.addgroup);public void save(view view) final contentvalues values = new contentvalues();values.put(name, addname.gettext().tostring();values.put(tel, addtel.gettext()

16、.tostring();values.put(groupname, addgroup.getselecteditem().tostring();final databasehelper dbhelper = new databasehelper(getapplicationcontext();final alertdialog.builder adbuilder = new alertdialog.builder(this);adbuilder.setmessage(确认保存记录吗?).setpositivebutton(确认, new dialoginterface.onclicklistener() overridepublic void onclick(dialoginterface dialog, int which) / todo auto-generated method stubdbhelper.insert(values);intent inte

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论