with tutorial studio recyclerview example endless java android pagination android-recyclerview

java - tutorial - recyclerview pagination



RecyclerView salta a la cima al paginar (1)

¡Entonces el problema fue realmente estúpido! Primero moví estas dos cosas a onCreate ()

adapter = new OffersAdapter(MainActivity.this, cityList); cityListRecyclerview.setAdapter(adapter);

Y agregado

adapter.notifyDataSetChanged();

En el método loadFromUrl (), y ahora todo funciona bien: D Tal vez si alguien tendrá el mismo problema, verá mi publicación: D

Tratando de implementar la paginación en RecyclerView, pero cuando el RecyclerView llega a su fin y las aplicaciones comienzan a cargar una nueva porción de datos, el RecyclerView salta a su cima.

cityListRecyclerview = (RecyclerView) findViewById(R.id.recyclerView); final LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this); cityListRecyclerview.setLayoutManager(linearLayoutManager); loadFromUrl(); cityListRecyclerview.setOnScrollListener(new RecyclerView.OnScrollListener() { @Override public void onScrolled(RecyclerView recyclerView, int dx, int dy) { super.onScrolled(recyclerView, dx, dy); visibleItemCount = linearLayoutManager.getChildCount(); totalItemCount = linearLayoutManager.getItemCount(); pastVisiblesItems = linearLayoutManager.findFirstVisibleItemPosition(); if (loading) { if ( (visibleItemCount+pastVisiblesItems) >= totalItemCount) { loading = false; page++; url += Api.OFFSET_URL + String.valueOf(page); loadFromUrl(); Log.v("LIST", "Last Item Wow !"); } } } });

El método loadFromUrl ():

public void loadFromUrl() { Ion.with(MainActivity.this) .load(url) .asJsonObject() .setCallback(new FutureCallback<JsonObject>() { @Override public void onCompleted(Exception e, JsonObject jsonObject) { progressDialog.dismiss(); JsonArray jsonArray = jsonObject.getAsJsonArray("flats"); jsonObjectToPass = jsonArray; for(int i = 0; i < jsonArray.size(); i++) { JsonElement obj = jsonArray.get(i); JsonObject jsonObject1 = obj.getAsJsonObject(); ............ here parsing JSON object and nothing interesting adapter = new OffersAdapter(MainActivity.this, cityList); adapter.setClickListener(MainActivity.this); loading = true; cityListRecyclerview.setAdapter(adapter); } } }); }

El archivo XML:

<android.support.v7.widget.RecyclerView android:id="@+id/recyclerView" android:scrollbars="vertical" android:layout_width="match_parent" android:layout_height="match_parent" />

Y el archivo gradle:

dependencies { compile fileTree(dir: ''libs'', include: [''*.jar'']) compile ''com.android.support:appcompat-v7:22.0.0'' compile ''com.google.android.gms:play-services:7.0.0''}

Entonces, ¿alguien puede decir qué estoy haciendo mal?