至此1024程序員日,首先祝廣大程序員兄弟們節日快樂!!
先看下效果
當VIewPager滑動的時候,整個頁面的顏色慢慢改變,而且是過渡改變的狀態
看似炫酷,其實只用到了一種方法
也就是顏色差值器
核心代碼如下:
//viewpager監聽
mPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int i, float v, int i1) {
ArgbEvaluator evaluator = new ArgbEvaluator();
if (i==0){
//改變根佈局顏色
ll_root.setBackgroundColor(getResources().getColor(R.color.common_orange));
mPager.setBackgroundColor(getResources().getColor(R.color.common_orange));
//定義顏色差值器
int evaluate = (Integer) evaluator.evaluate(v, getResources().getColor(R.color.common_orange), getResources().getColor(R.color.common_indelred));
ll_root.setBackgroundColor(evaluate);
mPager.setBackgroundColor(evaluate);
}
}
@Override
public void onPageSelected(int i) {
}
@Override
public void onPageScrollStateChanged(int i) {
}
});