Android涉及数据库、ListView的项目开发
- SQLiteOpenHelper
- ListView
- BaseAdapter
SQLiteOpenHelper
为方便Android的开发,简化对数据库进行操作、管理,Android提供了一个帮助类SQLiteOpenHelper,其有三个常用方法
- onCreate
- onUpgrade
- onOpen
如若需要使用数据库,具体步骤如下
- 创建一个类,继承SQLiteOpenHelper
- 为其添加构造函数
- 重写onCreate函数(内部使用SQL语句时,需要用execSQL())
- 重写onUpgrade(这个方法不太重要,主要用于数据库升级时调用,一般不用)
其次在主活动中步骤如下: - new一个你创建的类的对象(new成功后虽然会调用onCreate内的SQL语句,但具体数据库文件不会生成,类似于File,只有new没有输入输出流操作就没有具体文件生成)
如:
MyDBOpenHelper helper=new MyDBOpenHelper(this,"mydatabase.db",null,1)
//null指游标工厂;1指数据库版本号,当把1改为2后,会自动调用onUpgrade函数
- 创建并使用数据库(此步执行后具体文件才会创建)
SQLiteDatabase db=helper.getWritableDatabase()
OR
SQLiteDatabase db=helper.getReadableDatabase()
ListView
……
BaseAdapter
作为与ListView配合使用的适配器,其作用在于对展示的数据进行适当组织,以便于适合在View上显示,在ListView中有时候还需要在里面加入按钮等功能,这时ListView不再是只展示数据,而是其中包含的控件需要获得用户的焦点(继承自BaseAdapter的ArrayAdapter/SimpleAdapter不能成功胜任此工作)。其有四个方法:
- public int getCount()
- public Object getIterm(int position)
- public long getItemId(int position)
- public View getView(int position, View convertView, ViewGroup parent)
如需使用适配器,步骤如下
- 在ListView加载BaseAdapter时需要先定义一个继承自BaseAdapter的类,并对其方法进行重写
- 在ListView加载BaseAdapter时,首先调用getCount函数,获取条目的数量。
- 为了能更适配上ListView的条目显示,需对BaseAdaprer的getView方法进行重写,它的三个参数分别为:position即数据在集合中的位置,也就是第几条条目;convertView即布局文件inflate为视图,这个参数可用于对画出屏幕的条目资源重新利用;parent即父窗体。
此方法中应首先使用View.inflate()的方法将定义好的XML布局文件提取成View实例,接着会将XML布局文件中的各个控件实例化[使用findViewById()的方法]。此时数据集合中的某个数据就可以作用于各个控件。