package yifeiyuan.practice.practicedemos.ui;
import android.graphics.Color;
import android.os.Bundle;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.RelativeLayout;
import butterknife.ButterKnife;
import butterknife.InjectView;
import yifeiyuan.practice.practicedemos.R;
/**
* http://www.trinea.cn/android/viewpager-multi-fragment-effect/
*
*/
public class ViewPagerActivity extends AppCompatActivity {
@InjectView(R.id.vp)
ViewPager mVp;
@InjectView(R.id.rl_root)
RelativeLayout mRlRoot;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_view_pager);
ButterKnife.inject(this);
mVp.setOffscreenPageLimit(5);
mVp.setPageMargin(100);
mVp.setAdapter(new PagerAdapter() {
@Override
public int getCount() {
return 5;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
View view = new View(ViewPagerActivity.this
);
view.setBackgroundColor(getResources().getColor(R.color.primary_dark));
view.setBackgroundColor(Color.rgb(position * 55, position * 22, position * 33));
container.addView(view, position);
return view;
// return super.instantiateItem(container, position);
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}
});
mVp.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
// mRlRoot.invalidate();
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
}
}