loadermanager.loadercallbacks android 工作室
loadermanager.loadercallbacks android studio
我在项目中遇到 LoaderCallbacks 问题。我在 android studio 中实现了 LoaderManager。每当用户按下搜索按钮时,我都会尝试重新启动加载程序。
public class MainActivity extends AppCompatActivity implements LoaderManager.LoaderCallbacks<List<Book>>
mSearchButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Check connection status
checkConnection(cm);
if (isConnected) {
updateQueryUrl(mSearchViewField.getQuery().toString());
restartLoader();
Log.i(LOG_TAG, "Search value: " + mSearchViewField.getQuery().toString());
}else{
// Clear the adapter of previous book data
mAdapter.clear();
// Set mEmptyStateTextView visible
mEmptyStateTextView.setVisibility(View.VISIBLE);
// ...and display message: "No internet connection."
mEmptyStateTextView.setText("No Internet Connection");
}
}
});
但是,在 restartLoader() 下,当我尝试调用 getLoaderManager() 重新启动加载程序时,它说回调参数错误,第三个参数类型。我不确定我应该使用什么来回调。
public void restartLoader() {
mEmptyStateTextView.setVisibility(GONE);
progressBar.setVisibility(View.VISIBLE);
getLoaderManager().restartLoader(BOOK_LOADER_ID,null, MainActivity.this);
}
getLoaderManager
已弃用并使用已弃用的框架 Loaders。
您应该改用 LoaderManager.getInstance(MainActivity.this)
,它使用正确的支持 Library/AndroidX 加载程序,这可能是您导入的 LoaderManager.LoaderCallbacks
。
LoaderManager.getInstance(MainActivity.this)
.restartLoader(BOOK_LOADER_ID, null, MainActivity.this);
我在项目中遇到 LoaderCallbacks 问题。我在 android studio 中实现了 LoaderManager。每当用户按下搜索按钮时,我都会尝试重新启动加载程序。
public class MainActivity extends AppCompatActivity implements LoaderManager.LoaderCallbacks<List<Book>>
mSearchButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Check connection status
checkConnection(cm);
if (isConnected) {
updateQueryUrl(mSearchViewField.getQuery().toString());
restartLoader();
Log.i(LOG_TAG, "Search value: " + mSearchViewField.getQuery().toString());
}else{
// Clear the adapter of previous book data
mAdapter.clear();
// Set mEmptyStateTextView visible
mEmptyStateTextView.setVisibility(View.VISIBLE);
// ...and display message: "No internet connection."
mEmptyStateTextView.setText("No Internet Connection");
}
}
});
但是,在 restartLoader() 下,当我尝试调用 getLoaderManager() 重新启动加载程序时,它说回调参数错误,第三个参数类型。我不确定我应该使用什么来回调。
public void restartLoader() {
mEmptyStateTextView.setVisibility(GONE);
progressBar.setVisibility(View.VISIBLE);
getLoaderManager().restartLoader(BOOK_LOADER_ID,null, MainActivity.this);
}
getLoaderManager
已弃用并使用已弃用的框架 Loaders。
您应该改用 LoaderManager.getInstance(MainActivity.this)
,它使用正确的支持 Library/AndroidX 加载程序,这可能是您导入的 LoaderManager.LoaderCallbacks
。
LoaderManager.getInstance(MainActivity.this)
.restartLoader(BOOK_LOADER_ID, null, MainActivity.this);