设置StateBar样色渐变效果的Demo
<pre style="background-color:#21282d;color:#e0e2e4;font-family:'Lucida Sans Typewriter';font-size:13.8pt;"><span style="color:#e784a2;font-weight:bold;">int </span>curColor <span style="color:#e8e2b7;">= </span><span style="color:#e784a2;font-weight:bold;">this</span><span style="color:#e8e2b7;">.</span>getWindow<span style="color:#ffffff;">()</span><span style="color:#e8e2b7;">.</span>getStatusBarColor<span style="color:#ffffff;">()</span><span style="color:#e8e2b7;">;<br></span><span style="color:#7d8c93;">//</span><span style="color:#7d8c93;font-family:'宋体';">其实是</span><span style="color:#7d8c93;">ArgbEvaluator</span><span style="color:#7d8c93;font-family:'宋体';">对</span><span style="color:#7d8c93;">int</span><span style="color:#7d8c93;font-family:'宋体';">的颜色进行了计算,使从</span><span style="color:#7d8c93;">curColor</span><span style="color:#7d8c93;font-family:'宋体';">色值,变化到设置的色值<br></span><span style="color:#6ca3c9;font-weight:bold;">ValueAnimator </span>animator <span style="color:#e8e2b7;">= </span><span style="color:#6ca3c9;font-weight:bold;">ValueAnimator</span><span style="color:#e8e2b7;">.</span>ofObject<span style="color:#ffffff;">(</span><span style="color:#e784a2;font-weight:bold;">new </span>ArgbEvaluator<span style="color:#ffffff;">()</span><span style="color:#e8e2b7;">,</span>curColor<span style="color:#e8e2b7;">,</span><span style="color:#6ca3c9;font-weight:bold;">Color</span><span style="color:#e8e2b7;">.</span>argb<span style="color:#ffffff;">(</span><span style="color:#3cffff;">0</span><span style="color:#e8e2b7;">,</span><span style="color:#3cffff;">0</span><span style="color:#e8e2b7;">,</span><span style="color:#3cffff;">0</span><span style="color:#e8e2b7;">,</span><span style="color:#3cffff;">0</span><span style="color:#ffffff;">))</span><span style="color:#e8e2b7;">;<br></span>animator<span style="color:#e8e2b7;">.</span>addUpdateListener<span style="color:#ffffff;">(</span><span style="color:#e784a2;font-weight:bold;">new </span>ValueAnimator<span style="color:#e8e2b7;">.</span>AnimatorUpdateListener<span style="color:#ffffff;">() </span><span style="color:#e8e2b7;">{<br></span><span style="color:#e8e2b7;"> </span><span style="color:#a082bd;">@Override<br></span><span style="color:#a082bd;"> </span><span style="color:#e784a2;font-weight:bold;">public void </span><span style="color:#678cb1;">onAnimationUpdate</span><span style="color:#ffffff;">(</span><span style="color:#6ca3c9;font-weight:bold;">ValueAnimator </span>animation<span style="color:#ffffff;">) </span><span style="color:#e8e2b7;">{<br></span><span style="color:#e8e2b7;"> </span>getWindow<span style="color:#ffffff;">()</span><span style="color:#e8e2b7;">.</span>setStatusBarColor<span style="color:#ffffff;">((</span><span style="color:#6ca3c9;font-weight:bold;">Integer</span><span style="color:#ffffff;">) </span>animation<span style="color:#e8e2b7;">.</span>getAnimatedValue<span style="color:#ffffff;">())</span><span style="color:#e8e2b7;">;<br></span><span style="color:#e8e2b7;"> }<br></span><span style="color:#e8e2b7;">}</span><span style="color:#ffffff;">)</span><span style="color:#e8e2b7;">;<br></span>animator<span style="color:#e8e2b7;">.</span>setDuration<span style="color:#ffffff;">(</span><span style="color:#3cffff;">3000</span><span style="color:#ffffff;">)</span><span style="color:#e8e2b7;">.</span>setStartDelay<span style="color:#ffffff;">(</span><span style="color:#3cffff;">1000</span><span style="color:#ffffff;">)</span><span style="color:#e8e2b7;">;<br></span>animator<span style="color:#e8e2b7;">.</span>start<span style="color:#ffffff;">()</span><span style="color:#e8e2b7;">;</span></pre>