数据库操作

1. 5种数据库

SharePreference,File,Network,Sqlite:

SharePreference保存用户设置,参见ApiDemo中PersistentState

File相当于.ini文件

Network需要网络支持

Sqlite用于大量数据时使用,需要继承SQLiteOpenHelper

实例状态绑定:Bundle类,见SudoKu的记住当前数据。

 

2. 嵌入式数据库引擎SQLite

继承SQLiteOpenHelper,

SQLiteDatabase db = event.getWritableDatabase();

 

3. 数据绑定:

Adapter用于绑定和显示

一共有3种Adapter。

SimpleAdapter,ArrayAdapter,SimpleCursorAdapter。

还有一种ResourceCursorAdapter(抽象类),继承自CursorAdapter。在CursorAdapter中有两个方法:newView()和bindView()方法,newView方法用来new一个 RowLayout,bindView方法用来向这个新的RowLayout绑定数据。有人会说,这不是太麻烦了吗,有这个必要吗?当然有必要啊,因为有些数据不能用SimpleCursorAdapter来进行绑定的。其中的view.setTag()方法的主要作用是将数据保存到view对象中,这样从另外一个方法或另一个线程中,就可以得到其中的数据,这比用全局变量要好很多,可以访止多线程的情况下,数据的并发访问。

参见ApiDemo中ContactListItemAdapter。

转自http://www.javaeye.com/topic/549326

 

4. 2个进程共享数据

ContentProvider

 

5.Preferences布局用法
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
    <CheckBoxPreference
        android:key="music"
        android:title="@string/music_title"
        android:summary="@string/music_summary"
        android:defaultValue="true"/>
    <CheckBoxPreference
        android:key="hints"
        android:title="@string/hints_title"
        android:summary="@string/hints_summary"   
        android:defaultValue="true"/>       
</PreferenceScreen>

使子布局依赖于父布局
android:dependency="parent_checkbox_preference"               
android:layout="?android:attr/preferenceLayoutChild" 

还有
EditTextPreference
ListPreference

DialogPreference

你可能感兴趣的:(多线程,数据库,android,sqlite,NetWork,encoding)