gpt4 book ai didi

java - onLoadFinish() 在光标上给出 null

转载 作者:行者123 更新时间:2023-12-01 21:31:51 26 4
gpt4 key购买 nike

我正在尝试使用游标加载器使用数据库中的数据填充我的用户界面。

下面是我的 onCreateLoader()

@Override
public Loader < Cursor > onCreateLoader(int id, Bundle args) {

String sortingOrder = MovieContract.Movie.COLUMN_RATING + " ASC";
Uri uri = MovieContract.Movie.buildMovieDbUri();

Log.v(LOG_TAG, "URI: " + uri.toString() + " sorting: " + sortingOrder);

Cursor c = getActivity().getContentResolver().query(uri, MOVIE_PROJECTION, null, null, sortingOrder);

if (c.moveToFirst())
Log.v(LOG_TAG, "Movie ID: " + c.getInt(PROJ_MOVIE_ID - 1));
else
Log.v(LOG_TAG, "Fail");

CursorLoader cc = new CursorLoader(getActivity(),
uri,
MOVIE_PROJECTION,
null,
null,
sortingOrder);
return cc;
}

@Override
public void onLoadFinished(Loader < Cursor > loader, Cursor data) {
mAdapter.swapCursor(data);
}

异常

java.lang.NullPointerException: Attempt to invoke virtual method 'android.database.Cursor itsme.com.moviecatalogue.GridViewAdapter.swapCursor(android.database.Cursor)' on a null object reference

在上面的代码中,光标 c 正确获取了所有数据。但我在 onLoadFinished() 中的 swapCursor() 上收到 NullPointerException。我不明白我做错了什么。

最佳答案

您正在尝试调用 mAdapter 上的 swapCursor() 方法,此时该方法等于 null。这会导致您看到 NullPointerException。

要解决此问题,请确保在方法调用之前正确设置 mAdapter

关于java - onLoadFinish() 在光标上给出 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37357020/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com