PreferenceManager和editor的使用
mSettings = PreferenceManager.getDefaultSharedPreferences(this);
/* Check if it's the first run */
mFirstRun = mSettings.getInt(PREF_FIRST_RUN, -1) != mVersionNumber;
if (mFirstRun) {
Editor editor = mSettings.edit();
editor.putInt(PREF_FIRST_RUN, mVersionNumber);
editor.commit();
}
用 handler发布延迟的任务
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
mMenu.showMenu();
}
}, 500);
listfile和filter的配合使用
if ((f = dir.listFiles(mediaFileFilter)) != null) {
for (File file : f) {
if (file.isFile()) {
mediaToScan.add(file);
} else if (file.isDirectory()) {
directories.push(file);
}
}
}
注意这种循环方式,for(file f : f){},其中f一般是个arrylist<file>之类的
sqllitehelper 的使用指南
private MediaDatabase(Context context) {
// create or open database
DatabaseHelper helper = new DatabaseHelper(context);
this.mDb = helper.getWritableDatabase(); //mDb表示这个类操作数据库的接口
}
public synchronized static MediaDatabase getInstance(Context context) {
if (instance == null) {
instance = new MediaDatabase(context.getApplicationContext());
}
return instance;
}