Android实现颜色渐变启动页

前言
在Android开发过程中,启动页是一个app打开的时候第一个映入我们眼帘的,它承载着太多东西,有给我们第一视觉的美感,有预加载数据的功能,对于任何一个app而言,启动页都是必不可少的一部分。然后我就把实现颜色渐变的功能封装成了一个类StartSreen,那么今天我们就来讲讲这个类的使用吧。
许多人说没代码,那我再重申下:大家可以在 Demo大师 上关注 “奔跑的佩恩”,搜索文章《Android实现颜色渐变启动页》下载对应demo 今天涉及的内容:

  1. 实现效果
  2. StartSreen类介绍
  3. 在Mainactivity中调用代码
  4. 小窍门
注意:大家可以在 Demo大师 上关注 “奔跑的佩恩”,搜索文章《Android实现颜色渐变启动页》下载对应demo
一.实现效果 首先,介绍下实现的效果是,进入启动页后,界面颜色会在一个短的时间内从一个颜色逐渐变成另一个颜色,当完全变成另一个颜色以后,即实现了启动页效果。废话不多讲,下面贴出效果图。

Android实现颜色渐变启动页
文章图片
jk.gif 二.StartSreen类介绍 StartSreen,顾名思义,启动页面。
StartSreen包含以下几个方法:
2.1 初始化
//初始化 /** * @param startColor 八位或六位色值,如:"#F3D266" 或 "#FFF3D266" * @param endColor八位或六位色值,如:"#FFFFFF" 或 "#FFFFFFFF" */ public StartScreen(String startColor,String endColor);

StartScreen初始化的时候,需要传入两个色值,startColor 和 endColor,分别表示 启动页 开始的色值和渐变以后的最终色值。这两个参数均为String类型,且色值必须是八位或六位色值,如:"#F3D266" 或 "#FFF3D266"
2.2 设置颜色变化时间总长(单位毫秒)
//设置颜色变化时间总长(单位毫秒) setDelayTime(long delayTime);

此方法是设置界面颜色由 startColor 变到 endColor 所花的时间,单位是毫秒
2.3 获取颜色变化时间总长(单位毫秒)
getDelayTime();

获取颜色变化总长时间,单位毫秒,默认值是1500,即1.5秒
2.4 设置颜色渐变频率(单位毫秒)
//设置颜色渐变频率(单位毫秒) setChangeTime(long changeTime)

简单来讲就是用来设置颜色变化的速度,单位是毫秒。
2.5 获取颜色渐变频率(单位毫秒)
getChangeTime();

单位毫秒,默认变化粒度为10毫秒
2.6 执行渐变的方法
start(final View view, final OnFinishListener listener);

参数介绍如下:
view:要实行颜色渐变的控件
listener:渐变结束的回调
三. 在Mainactivity中调用代码 下面贴出StartSreen在MainActivity中的使用代码
public class MainActivity extends BaseActivity {@Override public int getContentViewId() { return R.layout.activity_main; }@Override public void initData() { //启动 startApp(); }@Override public void setListener() {}/**启动**/ private void startApp() { //#F3D266 new StartScreen("#FFFFFF", "#FF69B4").start(mLayoutView, new StartScreen.OnFinishListener() { @Override public void onFinish() { showShort("启动页加载完毕"); } }); }}

以上代码中的mLayoutView即为MainActivity的布局控件,即为渐变整个屏幕的“背景”。
四.小窍门 值得注意的是,StartScreen支持链式调用,如果你要在执行渐变效果的同时需要设置渐变参数,你可以这样调用:
new StartScreen("#FFFFFF", "#FF69B4")//设置渐变起止色值 .setDelayTime(2000)//设置渐变总时长 .setChangeTime(30)//设置渐变频率 //执行渐变效果 .start(mLayoutView, new StartScreen.OnFinishListener() { @Override public void onFinish() { showShort("启动页加载完毕"); } });

需要注意的是,在链式调用过程中,start(final View view, final OnFinishListener listener); 方法必须是最后一个调用。
ok,今天就讲到这里了,谢谢大家。
【Android实现颜色渐变启动页】`

    推荐阅读