
Ludy
- Admin
- Forum-Beiträge: 7.969
16.05.2017, 21:28:32 via Website
16.05.2017 21:28:32 via Website
private int firstVisibleItemPosition;
private int visibleItemCount;
private int totalItemCount;
private int start = 0;
private int end = 20;
private void initRecyclerView() {
RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.recyclerView);
layoutManager = new LinearLayoutManager(getContext());
recyclerView.setLayoutManager(layoutManager);
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
if (dy > 0) {
visibleItemCount = layoutManager.getChildCount();
totalItemCount = layoutManager.getItemCount();
firstVisibleItemPosition = layoutManager.findFirstVisibleItemPosition();
if (end == totalItemCount && (firstVisibleItemPosition + visibleItemCount) == end) {
start = end;
end = end + 20;
new ApiReader(String.format("https://192.168.1.10/api/android/tutorial/?start=%d&end=%d", start, end), apiInterfaceSecond).execute();
}
}
}
});
new ApiReader(String.format("https://192.168.1.10/api/android/tutorial/?start=%d&end=%d", start, end), apiInterfaceFirst).execute();
}
private ApiInterface apiInterfaceFirst = new ApiInterface() {
@Override
public void getResult(ArrayList<String> arrayListString) {
adapter = new CustomAdapter(context, arrayListString);
recyclerView.setAdapter(adapter);
}
}
private ApiInterface apiInterfaceSecond = new ApiInterface() {
@Override
public void getResult(ArrayList<String> arrayListString) {
adapter.notifyData( arrayListString, recyclerView.getAdapter().getItemCount() - 1);
}
}
private interface ApiInterface {
void getResult(ArrayList<String> arrayListString);
}
Adapter Erweiterung
CustomAdapter#notifyData(ArrayList<String> arrayListString, int i) {
this.listString.addAll( arrayListString );
notifyDataSetChanged();
notifyItemInserted(i);
}
Gruß Ludy (App Entwickler)
✴
Mein Beitrag hat dir geholfen? Lass doch ein "Danke" da.☺
✴
☕ Buy Me A Coffee ☕
✴
✨Meine Wunschliste✨
✴
?Telegram NextPit News?