- Fragment中AlertDialog彈出窗口的使用
Fragment默認不具有Content的一些方法和屬性,因此在Activity中可以使用的一些方法在Fragment中使用就需要一些小技巧了
初始化AlertDialog窗口
AlertDialog.Builder askDialog = new AlertDialog.Builder(getActivity());
如上,在使用Content的地方使用getActivity()來獲得Fragment所在Activity來初始化窗口
同上,使用Toast時第一個參數需要傳入一個Cotnent才可以初始化,此時我們可以通過主Activity來實現,需要注意的是此處需要調用getAcitivity()下的getApplicationContext()
Toast.makeText(getActivity().getApplicationContext(), e.toString(), Toast.LENGTH_SHORT).show();
- Fragment中SQLiteDatabase的使用
初始化 SQLiteDatabase db = null;
賦值 db = SQLiteDatabase.openOrCreateDatabase(strPath, null);
這里看似和Activity中使用沒什么兩樣,可能是我自己的原因吧,就是引入命名空間后,我的習慣是不再加SQLiteDatabase.的,可是在Fragment中提示openOrCreateDatabase()找不到,最后加入命名空間問題就消失了
至於為什么還是有點不解,再就是參數的問題,我之前是使用三個參數的方法,發現第二個參數死活認不到,最后無奈改為兩個參數的,同時第二個參數給了null才從數據庫中讀到數據