Skip to content

Instantly share code, notes, and snippets.

@zealbell
Last active July 15, 2018 20:42
Show Gist options
  • Save zealbell/e22021d7b8b970d1f99bc2ca0a22f669 to your computer and use it in GitHub Desktop.
Save zealbell/e22021d7b8b970d1f99bc2ca0a22f669 to your computer and use it in GitHub Desktop.
TwerkAdapter(@TwerkyListView)
//TWERK-ADAPTER
    public static class TwerkingOffAdapter extends  TwerkyListView.TwerkAdapter{

        private static final int TWERK_COLORS[]={  0xFFA8A8A8,0xFFBDCBB7,0xFFA3BDBF,0xFFF3F2E6,0xFFBECEC2,0xFFF4E8F7,0xFFC3D9D9, 0xFF4E4F4F,0xFFFAC8CA,0xFFEAC5B5,0xFFAEE8D5,0xFFE3DDC1,0xFFD6EFFF,0xFFF1F1CD,0xFFC7C7CF,0xFFF1DCCE };
        ArrayList<String> data;
        private LayoutInflater inflater;
        private int LayoutResId;

        public TwerkingOffAdapter(Context context, int LayResId, ArrayList<String> data){
            this.data=data;
            inflater =LayoutInflater.from(context);
            this.LayoutResId=LayResId;
        }

        @Override
        public int getItemCount(){
            return (data ==null)?0: data.size();
        }

        @Override
        public Twerkie onCreateViewHolder(ViewGroup parent, int ViewType) {
            View row= inflater.inflate(LayoutResId,parent,false);
            return new Twerkie(row);
        }

        @Override
        public void onBindViewHolder(TwerkHolder twerkholder, int position){
            Twerkie twerkie=(Twerkie)twerkholder;
            twerkie.twerkparent.setBackgroundColor(TWERK_COLORS[getRandom(0,TWERK_COLORS.length-1)]);
            twerkie.twerktext.setText("item "+position);
        }


        @Override
        public void onViewAttachedToWindow(TwerkHolder twerkholder) {
            super.onViewAttachedToWindow(twerkholder);/*do not forget this|it's essential for twerking*/
        }

        public class Twerkie extends  TwerkHolder {

            TextView twerktext;
            View twerkparent;
            private Twerkie(View v){
                super(v);
                twerkparent= v.findViewById(R.id.twerkparent);
                twerktext= v.findViewById(R.id.twerktext);
            }
        }
        private static int getRandom(int min, int max) {
            Random rand = new Random();
            return rand.nextInt((max - min) + 1) + min;
        }

    }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment