Closed wenchaosong closed 5 years ago
I'll look into this.
ok
I'm pretty certain this fixes the issue. I want to do a little more testing before I push a new build. Can you post your adapter code?
I was use the sample, i did not new a adapter, i just change init method and it was appeared
public class AddressBookDemoActivity extends DemoActivity implements RandomUserLoader.OnLoadCallback {
private static final String TAG = AddressBookDemoActivity.class.getSimpleName();
AddressBookDemoAdapter adapter = new AddressBookDemoAdapter();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
recyclerView.setLayoutManager(new StickyHeaderLayoutManager());
recyclerView.setAdapter(adapter);
}
@Override
protected void onResume() {
super.onResume();
getRandomUserLoader().load(this);
}
@Override
public void onRandomUsersDidLoad(List<Person> randomUsers) {
recyclerView.post(() -> adapter.setPeople(randomUsers));
}
@Override
public void onRandomUserLoadFailure(final Throwable t) {
Snackbar snackbar = Snackbar.make(recyclerView, "Unable to load addressbook", Snackbar.LENGTH_LONG);
snackbar.setAction(R.string.demo_addressbook_load_error_action, v -> showRandomUserLoadError(t.getLocalizedMessage()));
snackbar.show();
}
private void showRandomUserLoadError(String message) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.demo_addressbook_load_error_dialog_title)
.setMessage(message)
.setPositiveButton(android.R.string.ok, null)
.show();
}
private RandomUserLoader getRandomUserLoader() {
return ((StickyHeadersDemoApp) getApplicationContext()).getRandomUserLoader();
}
}
Well, as far as I can tell I've fixed the crash on an empty adapter. I've pushed https://github.com/ShamylZakariya/StickyHeaders/releases/tag/v0.7.11 and it's available for import.
when the data is empty, crash. so, the data can not empty? or, how to use it when init without set the code mRecyclerView.setVisibility(View.GONE);?