1.霓虹灯

霓虹灯的主要制作是通过颜色在每个视图中的循环显示。

首先需要两个数组来分别定义颜色和视图

int[] colors=new colors[]{

   Color.BLUE,Color.GREEN,Color.RED

}

int[] names=new int[]{R.id.view1,R.id.view2,R.id.view3,
};

2.关联视图

View[] views=new View[3];
for(int i=0;i<views.length;i++){views[i]=findViewById(names[i]);
}

3.用handler来处理View的背景颜色

//定义好当前颜色用来处理视图颜色的变化

int currentColor=0;
final Handler handler=new Handler(){@Overridepublic void handleMessage(@NonNull Message msg) {if (msg.what==0x123){
//currentColor充当颜色的变化量。
//由于从第二次遍历开始,currentColor=1,颜色已经加一,那么最后一个视图views[2]不能显示为colors[3],否则将越界异常,而要从colors[0]重新开始;
//即views[0]->colors[1] views[1]->colors[2]    views[2]->colors[0]
//第三次遍历
//  views[0]->colors[2]                     views[1]->colors[0] views[2]->colors[1];
//因此后面重新开始显示颜色的视图,可以在第二个循环中遍历并将颜色显示出来//第一个循环遍历未越界部分,并设置颜色从0到colors.length-currentColorfor(int i=0;i<colors.length-currentColor;i++){views[i].setBackgroundColor(colors[i+currentColor]);}
//第二个循环遍历 越界部分,并设置颜色从colors.length-currentColor到最后,常量j加一操作用来显示颜色从0开始执行for(int i=3-currentColor,j=0;i<3;i++,j++){views[i].setBackgroundColor(colors[j]);}}super.handleMessage(msg);}
};
//定义霓虹灯的颜色最多只有3个,每次执行都会讲currentColor加一,当到最大值的时候则重新从0开始
Timer timer=new Timer();
timer.schedule(new TimerTask() {@Overridepublic void run() {currentColor++;if (currentColor>=3){currentColor=0;}handler.sendEmptyMessage(0x123);}
}, 0, 100);

android 霓虹灯制作相关推荐

  1. 怎么用Android做登录界面,利用Android怎么制作一个APP登录界面

    利用Android怎么制作一个APP登录界面 发布时间:2020-12-02 17:09:10 来源:亿速云 阅读:79 作者:Leah 这期内容当中小编将会给大家带来有关利用Android怎么制作一 ...

  2. android页面布局计算机,Android Studio制作简单计算器App

    Android Studio制作简单计算器App 计算机界面如图: 程序设计步骤: (1)在布局文件中声明编辑文件框EditText,按钮Button等组件. (2)在MainActivity中获取组 ...

  3. Android Studio制作.9图片,看这一篇就够了

    一..9.png图片概念 这是安卓开发里面的一种特殊的图片 这种格式的图片在android 环境下具有自适应调节大小的能力,不会失真 (1)允许开发人员定义可扩展区域,当需要延伸图片以填充比图片本身更 ...

  4. Lottie Android 动画制作与使用

    Lottie Android 动画制作与使用 还未了解Lottie的同志,请观看我上篇文章: Lottie Android 初探 一.效果图预览 二.Adobe After Effects安装 作为I ...

  5. Android Studio 制作微信界面 上

    工程功能介绍 打开app,首先是个闪屏界面(常见于一般打开app时的小广告),设置时间为2s后进入登录界面.在登录界面中,中间可以输入密码,点击登录按钮进入微信的界面.   微信的界面由4个fragm ...

  6. 基于Android Tv制作一个Tv桌面(二)

    标题基于Android Tv制作一个Tv桌面(二) 这里是获取APP的各种信息,不知道为什么这一步只能在主类MainActivity 上进行,不能在其他的类进行此操作,也许是我见识短浅的原因吧,因为其 ...

  7. Android studio制作计算器源代码

    版权声明:本文为博主原创文章,未经博主允许不得转载.https://mp.csdn.net/postedit/82623704 一.Android studio制作计算器源代码 这是我学Android ...

  8. [Android] 如何制作手电筒程序

    继iphone的手电筒开发完成后,接下来我便著手开始Android如何制作手电筒的程序 我的跨平台引擎框架CloudBox已建立好iphone版的程序,但却对于Android上如何操控闪光灯一无所知 ...

  9. 蓝牙聊天App设计1:Android Studio制作蓝牙聊天通讯软件(UI界面设计)

    前言:蓝牙聊天App设计全部有三篇文章(一.UI界面设计,二.蓝牙搜索配对连接实现,三.蓝牙连接聊天),这篇文章是一.UI界面设计 课程1:Android Studio小白安装教程,以及第一个Andr ...

最新文章

  1. SAP HUM 内向交货单凭证流和Relationship Browser
  2. linux系统core dump设置,linux coredump设置
  3. python 顺序栈及基本操作
  4. jquery unbind 异步_JQuery中的bind()和unbind()的理解
  5. java快速排序算法_JAVA版排序算法之快速排序示例
  6. python多线程操作列表_详解Python多线程下的list
  7. functools.partial()==>预先设置参数,使得之后调用的时候,减少函数的参数
  8. 每日小记 2017.3.24
  9. 如何确定C语言中数组的大小?
  10. PHP面相对象中的重载与重写
  11. 模板元编程(TMP)
  12. java泛型笔记2--上界通配符
  13. 一次RAC主机资源使用异常导致的节点重启
  14. 初识文件管理、文件的逻辑结构
  15. 交易的核心精髓是什么?
  16. Prim算法(JAVA实现-邻接矩阵)
  17. 印度萌新令人绝望的操作:提交PR“轰炸”近40万开发者,GitHub负责?
  18. 云服务器 虚拟主机 故障,云虚拟主机重启服务器
  19. 拓扑排序之AOV,关键路径之AOE
  20. 【人工智能】机器人和AI崛起,服务型经济的春天来了

热门文章

  1. php 数组转换逗号_PHP implode():数组转字符串
  2. 处理ueditor添加表格没有边框的问题
  3. lubuntu如何系统升级
  4. 华为鸿蒙灭屏,华为对EMUI10.1.0.126版本开启公测,彩色息屏显示终于来了
  5. 我又双㕛叒叕放了鸽子
  6. canvas 的动画卡顿问题(运行一段时间卡顿)
  7. Rational Rose2016安装及破解教程
  8. 前端setting.json配置
  9. python语言字符串定义_Python字符串(string)
  10. 电子计算机辩论稿,桂林电子科技大学计算机系辩论队