zealbell / TwerkyListView

A beautifully animated recycler-list-view, that twerks the way African earthworms do in order to move

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Project Status: Active - Initial development has started, temporary release; work hasn't been stopped

TwerkyListView

A beautiful RecyclerView which list items and animates similar to the peristaltic motion(twerking) of earthworms in Africa.(Inspiration for this project wasn't completely drawn imagining or studying how earthworms move neither does the author eat or rear earthworms hence any decision made by the reader to google twerking-African earthworms is at the sole discretion of the reader). also an IllegalTwerkingException() is thrown if Adapter does not extend TwerkyListView$TwerkAdapter

Method Summary

Method Return What it does
setTwerkInterpolators(Interpolator twerkpoleStart,Interpolator twerkpoleEnd) void decides twerking start and end motion interpolation
setTwerking(boolean twerking) void enables/cancels twerking
setTwerkingOffTime(int twerkOfftime) void resets the time it takes to complete twerk

by default(if setTwerkInterpolators(...) is never called)

  • twerkpoleStart = new FastOutSlowInInterpolator();
  • twerkpoleEnd = new OvershootInterpolator();

Class Summary

Class Type What it does
TwerkAdapter static Twerks the Adapter

Inspiration

'Invite me' by Stan Yakusevich @Dribble

Demo

Appearance

Demo

Quick Start

Gradle

   dependencies {
        implementation 'com.github.54LiNKeR:TrumpyRecyclerView:1.trump.2'
        implementation 'com.github.54LiNKeR:TwerkyListView:1.twerk.1'
   }

XML

        <linkersoft.blackpanther.twirky.TwerkyListView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/twerk"
            app:stretchScale="0.5" // expansion scale
            app:shrinkScale="0.5" // contraction scale
            app:ShrinkStretchSpan="6" // number of list items to contract and expand when twerking
            app:twerkStyle="UP"/>

Activity

         public class MileyCyrus extends AppCompatActivity {


             @Override
             protected void onCreate(Bundle savedInstanceState) {
                 super.onCreate(savedInstanceState);
                 setContentView(R.layout.twirky);
                 Context context=this;

                 //FAKE-DATA
                 ArrayList<String> data=new ArrayList<>();
                 for (int i = 0; i < 20; i++)data.add(null);
                 //TWERKING-VIEW
                 TwerkyListView twerkList=(TwerkyListView)findViewById(R.id.twerk);
                 //LAYOUT
                 TrumpyRecycler.TrumpyLinearLayoutManager tllm= new TrumpyRecycler.TrumpyLinearLayoutManager(context);
                 tllm.setOrientation(LinearLayoutManager.VERTICAL);
                 twerkList.setLayoutManager(tllm);
                 twerkList.setFlingFactor(TrumpyRecycler.MODERATE_FLING);
                 twerkList.setFrictionFactor(TrumpyRecycler.NO_FRICTION);
                 twerkList.setOverScrollMode(TrumpyRecycler.OVER_SCROLL_NEVER);
                 //ADAPTER
                 TwerkingOffAdapter twerkdapter=new TwerkingOffAdapter(context,R.layout.twerkrow,data);
                 twerkList.setAdapter(twerkdapter);
                 //TWERKING
                 twerkList.setTwerking(true);
             }

             //TWERK-ADAPTER
             public static class TwerkingOffAdapter extends  TwerkyListView.TwerkAdapter{...}

project is still under development

GooglePlay

LiNKeR

About

A beautifully animated recycler-list-view, that twerks the way African earthworms do in order to move


Languages

Language:Java 100.0%