使用带有片段的SQLite DB

时间:2014-09-29 22:16:01

标签: android android-fragments fragment android-sqlite

所以我有一些标签片段的基本活动。其中一个打开了与我的数据库的连接。应用程序启动没有任何崩溃,但当我旋转手机并重新创建视图时,我得到一个“NullPointerException”:

147    MySQLiteHelper dbHelper = new MySQLiteHelper(getActivity());
148    SQLiteDatabase db = dbHelper.getReadableDatabase();

调试器:

09-30 00:12:56.307    9690-9690/com.apps.jean.emergency E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.NullPointerException
        at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:224)
        at android.database.sqlite.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:188)
        at com.apps.jean.emergency.Fragment.Call_Fragment.loadContinentDataInSpinner(Call_Fragment.java:148)

任何人都可以帮我吗?谢谢!

1 个答案:

答案 0 :(得分:1)

我会看看你在哪里调用新的MySQLiteHelper(getActivity())。它在onCreate()中吗?您的片段可能尚未附加到活动。尝试等待,直到你进入onAttach()方法,然后你就会有一个活动。