自定义控件三秒改变改变颜色
//布局文件
<com.bw.u.liangweihangdiyizhouer.MyView android:id="@+id/MyTextView" android:layout_width="600dp" android:layout_height="600dp" android:layout_centerInParent="true" />
//自定义控件的类
public class MyView extends TextView{private Paint mPaint; public MyView(Context context) {this(context,null); }public MyView(Context context, AttributeSet attrs) {this(context, attrs,R.style.AppTheme); }public MyView(Context context, AttributeSet attrs, int defStyleAttr) {super(context, attrs, defStyleAttr); mPaint=new Paint(); }@Override protected void onDraw(Canvas canvas) {super.onDraw(canvas); }protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {super.onMeasure(heightMeasureSpec,widthMeasureSpec); }
//MainActivity的代码
public class MainActivity extends AppCompatActivity {private boolean flag=true; private MyView myView; private int count=0; private ArrayList<String> list=new ArrayList<>(); private Handler handler=new Handler(){public void handleMessage(Message msg) {if (msg.what==0){myView.setText(list.get(count)); myView.setTextSize(50); myView.setBackgroundColor(Color.parseColor(list.get(count))); if (count<list.size()-1){count++; }else {count=0; }handler.sendEmptyMessageDelayed(0, 2000); }}}; protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); myView = (MyView) findViewById(R.id.MyTextView); list.add("#6187c5"); list.add("#00cc00"); list.add("#ffffff"); list.add("#666cc9"); list.add("#f00000"); list.add("#00ff00"); //从元素的第一个开始 myView.setText(list.get(count)); //开始给自定义赋值 myView.setBackgroundColor(Color.parseColor(list.get(count))); //发送延迟消息 handler.sendEmptyMessageDelayed(0, 2000); //点击监听 myView.setOnClickListener(new View.OnClickListener() {public void onClick(View v) {if (flag){flag=false; Toast.makeText(MainActivity.this,"关闭两秒改变事件",Toast.LENGTH_SHORT).show(); //移除发送的消息 handler.removeMessages(0); }else {flag=true; count=0; Toast.makeText(MainActivity.this,"开启两秒改变事件",Toast.LENGTH_SHORT).show(); handler.sendEmptyMessageDelayed(0,2000); }}}); } }
自定义控件三秒改变改变颜色相关推荐
- Java背景颜色怎么设成随机的_JS实现随机改变背景颜色
JS实现随机改变背景颜色 JS实现随机改变背景颜色 使用Js实现随便点击页面某位置就能改变页面背景颜色的功能 function changeBg(){//改变背景颜色的函数 var bgColor=& ...
- C语言教你怎么改变字体颜色
初学c的小伙伴可能已经对那个黑底白字的框有些厌倦了,不妨加点颜色,增加加可读性. 废话不多说,先来看一下效果图: /* 颜色函数SetConsoleTextAttribute(GetStdHandle ...
- iOS 改变图片颜色
在做项目的时候碰到了一个需求,把app的主题颜色改变成另外一种颜色,由于没有给出新的素材图片,需要把现有图片的颜色改变一下.下面是改变图片颜色的方法(一般对于单一颜色的图片) imageWithRen ...
- mpvue微信小程序中使用svg图标,并通过代码动态改变图标颜色
微信小程序,mpvue中使用svg图标,并通过代码改变图标颜色 本文主要是mpvue开发小程序的代码,不过微信小程序原生开发应该也是一样的,思路都是通用的,按照这个思路微信小程序原生开发一样可以实现同 ...
- Bitmap 处理图片修改为透明背景,改变主颜色
先上图,有图有实践 很明显前一个指纹把下面的签名遮挡住,后一个达到了签名按指纹的效果 注:在Android7.0上面测试效果不佳 目录 前言 一.Bitmap是什么? 二.使用setPixel 修改指 ...
- OpenCV for Python之改变图片颜色
OpenCV for Python之改变图片颜色 1.环境 2 直接修改通道值 3.与.或.非.异或操作 Opencv4 官方文档 : https://docs.opencv.org/4.2.0/ O ...
- 在DX12中使用imgui 入门教程 立方体旋转+改变背景颜色
入门imgui第一天,把遇到的问题和参考两位大佬写的教程,总结了一下,写了下来,若有错误欢迎指正 参考文章: [记录]DirectX12 添加ImGui组件 - 知乎 (zhihu.com) Dire ...
- android改变图标颜色
同一个图标,但是可能会有多种背景颜色.比如,标识空气质量的图标,因空气质量有多种情形,对应的图标就有多种背景颜色. 实现这种需求有两种方式: 1.针对每一种情形,切一张对应的图标. 2.只切一张图标, ...
- html怎么改变图片亮度,纯干货,前端学者的福音!如何使用css滤镜改变图片颜色...
原标题:纯干货,前端学者的福音!如何使用css滤镜改变图片颜色 说到对图片进行处理,我们经常会想到PS,美图秀秀这类的图像处理工具.作为前端,全栈开发者,我们经常会需要处理一些特效,例如根据不同的状态 ...
最新文章
- 10 种机器学习算法的要点
- 关于单点登录中同一浏览器session信息共享的又一解决办法
- Python基于OpenCV的人脸检测
- 基于ArcEngine与C#的鹰眼地图实现
- 在保护继承中基类的共有成员_C++面向对象:C++ 继承
- Tableau可视化学习笔记:day07-08
- 【渝粤教育】国家开放大学2019年春季 690化工原理及实验 参考试题
- P1491 集合位置
- mysql5.7.22.zip使用,mysql5.7.22 zip 版安装
- RHEL6 下搭建 nginx + uwsgi + cgi 平台
- 论文阅读 || 语义分割系列 —— deeplabv1 详解
- 三星note9刷Android9,【极光ROM】-【三星NOTE9 N960X-9810】-【V21.0 Android-Q-THB】
- vb程序设计编程科学计算机,Visual Basic程序设计教程:计算机类
- 秋天视频批量生成GIF V1.32
- HTML技巧篇——禁止网页元素被右击、拖动、选中、复制
- 英语语法回顾1——简单句
- 深入了解iPad上的MouseEvent
- 新浪微博用户密码泄露 经部分用户验证为真
- 安卓修改电池容量教程_安卓手机用re管理器修改电池信息增加待机时间
- Android数据备份(Android Data Backup)