MarkoMilos / Paginate

Library for creating simple pagination functionality upon RecyclerView and AbsListView

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

how to set your lib in my adapter class

yashshekhada opened this issue · comments

package com.example.yash.doublerecycle;

import android.app.ProgressDialog;
import android.content.Context;
import android.os.AsyncTask;
import android.os.CountDownTimer;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.StaggeredGridLayoutManager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AbsListView;
import android.widget.TextView;

import com.paginate.Paginate;
import com.paginate.recycler.LoadingListItemCreator;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.logging.Handler;
import java.util.logging.LogRecord;

public class MainActivity extends AppCompatActivity {
RecyclerView.Adapter mAdapter2;
ArrayList alImage;
ArrayList aboutchair;
private final int AUTOLOAD_THRESHOLD = 4;
private final int MAXIMUM_ITEMS = 52;

private View mFooterView;
private Handler mHandler;
private boolean mIsLoading = false;
private boolean mMoreDataAvailable = true;
private boolean mWasLoading = false;
private HLVAdapter mAdapter;
ArrayList<String> chairnumber, dimension, hight, diameter, length, volume, introl;
RecyclerView mRecyclerView, mRecyclerView2;
RecyclerView.LayoutManager mLayoutManager, mLayoutManager2;
private static final int GRID_SPAN = 3;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    ActionBar ack = getSupportActionBar();
    ack.hide();
    alImage = new ArrayList<>(Arrays.asList(R.drawable.h, R.drawable.h, R.drawable.h, R.drawable.h, R.drawable.h, R.drawable.h, R.drawable.h, R.drawable.h, R.drawable.h, R.drawable.h, R.drawable.h, R.drawable.h));
    aboutchair = new ArrayList<>(Arrays.asList("gray", "blue", "red", "yellow", "gray", "blue", "red", "yellow", "gray", "blue", "red", "yellow"));

    //<---Adapter -->
    chairnumber = new ArrayList<>(Arrays.asList("123", "345", "678", "912", "gray", "blue", "red", "yellow", "gray", "blue", "red", "yellow"));
    dimension = new ArrayList<>(Arrays.asList("12cm", "12cm", "12cm", "12cm", "gray", "blue", "red", "yellow", "gray", "blue", "red", "yellow"));
    introl = new ArrayList<>(Arrays.asList("-", "-", "-", "-", "gray", "blue", "red", "yellow", "gray", "blue", "red", "yellow"));
    hight = new ArrayList<>(Arrays.asList("27cm", "27cm", "27cm", "27cm", "gray", "blue", "red", "yellow", "gray", "blue", "red", "yellow"));
    diameter = new ArrayList<>(Arrays.asList("N/A", "N/A", "N/A", "N/A", "gray", "blue", "red", "yellow", "gray", "blue", "red", "yellow"));
    length = new ArrayList<>(Arrays.asList("N/A", "N/A", "N/A", "912", "gray", "blue", "red", "yellow", "gray", "blue", "red", "yellow"));
    volume = new ArrayList<>(Arrays.asList("N/A", "N/A", "N/A", "N/A", "gray", "blue", "red", "yellow", "gray", "blue", "red", "yellow"));
    mRecyclerView = (RecyclerView) findViewById(R.id.recycler_view);
    mRecyclerView.setHasFixedSize(true);
    mRecyclerView2 = (RecyclerView) findViewById(R.id.recycler_view1);
    mRecyclerView2.setHasFixedSize(true);
    // The number of Columns
    mLayoutManager = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);
    mRecyclerView.setLayoutManager(mLayoutManager);
    mLayoutManager2 = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);
    mRecyclerView2.setLayoutManager(mLayoutManager2);
    mAdapter2 = new HLVAdapter2(MainActivity.this, chairnumber, dimension, hight, diameter, length, volume, introl);
    mAdapter = new HLVAdapter(MainActivity.this, alImage, aboutchair);
    //
    mRecyclerView.setAdapter(mAdapter);


      mRecyclerView2.setAdapter(mAdapter2);
    //  mRecyclerView.setAdapter(mAdapter);
    Paginate.Callbacks callbacks = new Paginate.Callbacks() {
        @Override
        public void onLoadMore() {
            // Load next page of data (e.g. network or database)
        }

        @Override
        public boolean isLoading() {
            // Indicate whether new page loading is in progress or not
            return true;
        }

        @Override
        public boolean hasLoadedAllItems() {
            // Indicate whether all data (pages) are loaded or not
            return true;
        }
    };
    Paginate.with(mRecyclerView, callbacks)
            .setLoadingTriggerThreshold(2)
            .addLoadingListItem(false)
            .setLoadingListItemCreator(HLVAdapter.ViewHolder)

            .build();

}

}

--------------------------------------------------my adapter-----------------------------------------
package com.example.yash.doublerecycle;

/**

  • Created by yash on 15/5/17.
    */
    import android.content.Context;
    import android.content.Intent;
    import android.support.v7.widget.RecyclerView;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.ImageView;
    import android.widget.TextView;
    import android.widget.Toast;

import com.bumptech.glide.Glide;
import com.paginate.abslistview.LoadingListItemCreator;

import java.util.ArrayList;

public class HLVAdapter extends RecyclerView.Adapter<HLVAdapter.ViewHolder> {
ArrayList alImage;
ArrayList aboutchair ;

Context ctx;

public HLVAdapter(Context context, ArrayList<Integer> alImage,ArrayList<String> aboutchair) {
    super();
    this.ctx = context;
    this.alImage = alImage;
    this.aboutchair = aboutchair;

}



@Override
public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
    View v = LayoutInflater.from(viewGroup.getContext())
            .inflate(R.layout.grid_item, viewGroup, false);
    ViewHolder viewHolder = new ViewHolder(v);
    return viewHolder;
}



@Override
public void onBindViewHolder(ViewHolder viewHolder, int i) {

viewHolder.imgThumbnail.setImageResource(alImage.get(i));

    int image = alImage.get(i);
    viewHolder.imgThumbnail.setImageResource(image);
    Glide.with(ctx)
            .load(image)
            .override(150, 150)
            .into(viewHolder.imgThumbnail);

    viewHolder.aboutchair.setText(aboutchair.get(i));
    viewHolder.aboutchair.setTypeface(Validate.setTypeface( ctx ));

    viewHolder.setClickListener(new ItemClickListener() {
        @Override
        public void onClick(View view, int position, boolean isLongClick) {
            if (isLongClick) {
                Toast.makeText(ctx, "#" + position , Toast.LENGTH_SHORT).show();
                ctx.startActivity(new Intent(ctx, MainActivity.class));
            } else {
                Toast.makeText(ctx, "#" + position , Toast.LENGTH_SHORT).show();
            }
        }
    });
}

@Override
public int getItemCount() {
    return alImage.size();
}

public  class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener, View.OnLongClickListener{

    public ImageView imgThumbnail;
    public TextView aboutchair,chairnumber;


    private ItemClickListener clickListener;

    public ViewHolder(View itemView) {
        super(itemView);
        imgThumbnail = (ImageView) itemView.findViewById(R.id.img_thumbnail);
        aboutchair = (TextView) itemView.findViewById(R.id.productname);


        itemView.setOnClickListener(this);
        itemView.setOnLongClickListener(this);

    }



    public void setClickListener(ItemClickListener itemClickListener) {
        this.clickListener = itemClickListener;
    }

    @Override
    public void onClick(View view) {
        clickListener.onClick(view, getPosition(), false);
    }

    @Override
    public boolean onLongClick(View view) {
        clickListener.onClick(view, getPosition(), true);
        return true;
    }


}

}

The question is not clear. Closing...