首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从自定义适配器类刷新ListView -安卓

从自定义适配器类刷新ListView -安卓
EN

Stack Overflow用户
提问于 2013-11-02 07:47:16
回答 1查看 511关注 0票数 1

我想从我的自定义适配器类刷新ListFragment中的数据,但是得到了错误NullPointerException。

这是Adaper类方法:

代码语言:javascript
复制
b1.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {

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

        }
    });

当我在我的片段类中调用它时,我在mDataBase = dbHelper.getWritableDatabase();中得到了java.lang.NullPointerException

getBasketList():

代码语言:javascript
复制
public void refreshList() {

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

下面是我得到错误的部分:

代码语言:javascript
复制
 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:

代码语言:javascript
复制
 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)
EN

回答 1

Stack Overflow用户

发布于 2013-11-02 07:50:42

您是否设置了正确的上下文?

我认为他是你的问题,一个问题.

如果这没有帮助,那么发布getActivity()的内容可能会有帮助?

编辑

你的logcat让我一直认为这是一个上下文错误!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19737248

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档