2013-11-01 3 views
1

Я хочу обновить данные в ListFragment из моего пользовательского класса адаптера, но получил ошибку NullPointerException.Обновление ListView из пользовательского класса адаптера - Android

Это Adaper метод класса:

b1.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 

      BasketFragment basketFragment = new BasketFragment(); 
      basketFragment.getBsketList(); 

     } 
    }); 

И когда я называю это в моем классе Fragment я java.lang.NullPointerException на mDataBase = dbHelper.getWritableDatabase();

getBasketList():

public void refreshList() { 

    dbAdaper.setArrayMyData(selectAll()); 
    dbAdaper.notifyDataSetChanged(); 
} 

И вот часть, где я получил ошибку:

public ArrayList<BasketData> selectAll() { 

    Cursor mCursor = null; 
    dbHelper = new DBHelper(getActivity()); 
    mDataBase = dbHelper.getWritableDatabase();//NullPointerException 
    mCursor = mDataBase.query("orderTable", null, null, null, null, null, null); 

LogCat:

java.lang.NullPointerException 
     at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:224) 
     at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:164) 
     at com.epon.fragments.BasketFragment.selectAll(BasketFragment.java:100) 
     at com.epon.fragments.BasketFragment.getBsketList(BasketFragment.java:142) 
     at com.epon.adapters.DBBasketAdapter$2.onClick(DBBasketAdapter.java:177) 
     at android.view.View.performClick(View.java:4240) 
     at android.view.View$PerformClick.run(View.java:17721) 
     at android.os.Handler.handleCallback(Handler.java:730) 
     at android.os.Handler.dispatchMessage(Handler.java:92) 
     at android.os.Looper.loop(Looper.java:137) 
     at android.app.ActivityThread.main(ActivityThread.java:5103) 
     at java.lang.reflect.Method.invokeNative(Native Method) 
     at java.lang.reflect.Method.invoke(Method.java:525) 
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737) 
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 
     at dalvik.system.NativeStart.main(Native Method) 
+0

Сообщение DBHelper code – ramaral

ответ

0

Вы установить контекст правильно?

Я думаю, что его это ваша проблема проблема.

Возможно, если это не помогает размещать содержимое getActivity(), может быть полезно?

редактировать

Ваш LogCat заставляет меня продолжать думать, что его ошибка контекста!

+0

Yeap ... Я могу обновить данные внутри фрагмента. –

+0

, то пожалуйста, сообщите logcat error ... –

Смежные вопросы