package se.emilsjolander.flipview; import se.emilsjolander.flipview.FlipAdapter.Callback; import se.emilsjolander.flipview.FlipView.OnFlipListener; import se.emilsjolander.flipview.FlipView.OnOverFlipListener; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.Menu; import android.view.MenuItem; public class MainActivity extends Activity implements Callback, OnFlipListener, OnOverFlipListener { private FlipView mFlipView; private FlipAdapter mAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mFlipView = (FlipView) findViewById(R.id.flip_view); mAdapter = new FlipAdapter(this); mAdapter.setCallback(this); mFlipView.setAdapter(mAdapter); mFlipView.setOnFlipListener(this); mFlipView.peakNext(false); mFlipView.setOverFlipMode(OverFlipMode.RUBBER_BAND); mFlipView.setEmptyView(findViewById(R.id.empty_view)); mFlipView.setOnOverFlipListener(this); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.activity_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.prepend: mAdapter.addItemsBefore(5); return true; } return super.onOptionsItemSelected(item); } @Override public void onPageRequested(int page) { mFlipView.smoothFlipTo(page); } @Override public void onFlippedToPage(FlipView v, int position, long id) { Log.i("pageflip", "Page: "+position); if(position > mFlipView.getPageCount()-3 && mFlipView.getPageCount()<30){ mAdapter.addItems(5); } } @Override public void onOverFlip(FlipView v, OverFlipMode mode, boolean overFlippingPrevious, float overFlipDistance, float flipDistancePerPage) { Log.i("overflip", "overFlipDistance = "+overFlipDistance); } }