android 动态添加颜色,Android绘制一个三角形并且可动态改变颜色

方法一:

这种方法的三角形角度没法控制,因为其实是矩形旋转。

android:fromDegrees="45"

android:pivotX="135%"

android:pivotY="15%">

android:width="16dp"

android:height="16dp" />

然后将此xml设置为控件的background,在代码中,如下使用:

LayerDrawable layerDrawable = (LayerDrawable) view.getBackground();

GradientDrawable drawable = (GradientDrawable)layerDrawable.getDrawable(0);

drawable.setColor(mainColor);

注意:当xml使用的是标签,代码中可直接

GradientDrawable drawable = (GradientDrawable)view.getBackground();

而当使用的是layer-list时,需要先使用LayerDrawable,然后要用第几个item,就getDrawable(i); i为shape的顺序

方法二:

使用SVG,android5.0以上开始支持SVG,也有兼容包支持以前的版本,或者使用第三方开源库(svg-android,lottio)

使用方法就是DrawableCompat.setTint

关于SVG的生成与动画,

VectorDrawableCompat vectorDrawableCompat = VectorDrawableCompat.create(getResources(), R.drawable.ic_home_black_24dp, getTheme());

//你需要改变的颜色

vectorDrawableCompat.setTint(getResources().getColor(R.color.color_blue));

YourImageView.setImageDrawable(vectorDrawableCompat)

方法三:

自定义View,Canvas绘制,这种比较自由,也最简单,简单的图形还是用这个比较好。

protected void onDraw(Canvas canvas) {

super.onDraw(canvas);

Paint p = new Paint();

p.setColor(Color.BLACK);

//实例化路径

Path path = new Path();

path.moveTo(80, 200);// 此点为多边形的起点

path.lineTo(120, 250);

path.lineTo(80, 250);

path.close(); // 使这些点构成封闭的多边形

canvas.drawPath(path, p);

}

然后在你的布局文件中直接使用,预览没有效果,需要先build一下工程。

参考链接:

Android 通过 shape 实现三角形气泡效果

Android自定义控件提供颜色属性动态改变控件颜色

Android svg 绘制三角形

代码动态改变SVG矢量图颜色

SVG-Android开源库

Android 中使用 SVG 的一个坑

Android绘图机制

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/527856.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

支付宝 android 2.3,app被拒记录-2.3-包含支付宝

2. 32020年8月21日 上午1:29发件人 Apple* 2. 3 Performance: Accurate Metadata### Guideline 2.3.1 - PerformanceWe discovered that your app contains hidden features. Attempting to hide features, functionality or content in your app is considered egregious beha…

android adb 静默安装,Android_如何静默安装

Android常用代码之普通及系统权限静默安装APK本文主要介绍程序如何安装apk,包括普通模式安装和系统权限静默安装。如果是非系统应用请直接查看:Android常用代码之APK root权限静默安装,查看更完美的解决方案。1、普通模式安装,调用…

android 群控 网络 adb,安卓群控.sln · 罗金方/结合mini和adb命令,和adb socket实现安卓群控 - Gitee.com...

Microsoft Visual Studio Solution File, Format Version 12.00# Visual Studio 14VisualStudioVersion 14.0.25420.1MinimumVisualStudioVersion 10.0.40219.1Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") "安卓群控", "安卓群…

android界面初始化设计,界面数据初始化及各个按钮功能的实现

1.课程的初忠与目的问题:通过上课发现,在学习完成Android基本组件后,还会迷茫于如何完成一个完整的应用。本实践课程通过开发完成一个“畅听音乐”的小项目,实现从基本组件的学习到项目开发过程的转变。2. 课程的特点这是一门实践…

html中图片动态效果代码,动态网页设计代码 网页制作动态图片效果源代码

动态网页设计需要用到什么工具?一般的用网页三剑客,dreamwear一般必用,比较好上手的,html是要懂的,cssdiv的标注设计也是要学习的。 如果是做前台页面设计会用到的工具:firework、flash、ps、 coreldraw 如…

html文件设置断点调试,断点调试

断点调试使用 ES2015 特性来开发 Node.js 项目可以带来巨大的便利,但同时由于有些特性现在还不支持,需要借助 Babel 编译,运行的代码实际上是编译后的代码,这样给调试带来很大的麻烦。ThinkJS 从 2.2.0 版本开始支持断点调试源代码…

html如何太假icon图标,CSS3 icon font完全指南(CSS3 font 会取代icon图标)

为什么要将icon做成字体?在很多网站项目中,我们常常会用到各种透明小图标,然后网站要兼容各个浏览器,也可能会有多个尺寸,甚至还要考虑换肤等需求。那么我们就要将这些小图标输出为多种尺寸、颜色和文件格式&#xff0…

html5 video 直播流无声音,【报Bug】html5plus 使用 VideoPlayer 播放部分rtmp没有声音

详细问题描述[内容]使用 html5plus 使用 VideoPlayer 播放流媒体,播放m3u8格式正常,但rtmp格式部分有问题。希望官方能确认是否是html5plus自身的缺陷呢,是否对某些编码类型的rtmp不支持?1、比如社区之前出现过的湖南卫视rtmp&…

kodi android 目录,Kodi添加本机和电脑上的电影视频、音乐、图片目录教程

很多人都想在家看电影时能享受到电影院的那种大屏快感,Kodi正是这样的一款强大的家庭影院影音播放中心!不过有些用户对它的使用不是很了解,我们一起来学习一下。使用Kodi你可以非常方便地在客厅的 Kodi 中播放寝室电脑里或 NAS 中下载好的电影…

html5 电流效果,在HTML5 Canvas 2D上绘制云雾中的电流动画特效

JavaScript语言:JaveScriptBabelCoffeeScript确定ctrl {numParticles: 35,maxRadius: 80,hue: 220,hueRange: 15,fade: 0.36,halo: true,zappy: true,zapComplexity: 1}var gui new dat.GUI();gui.add(ctrl, numParticles, 1, 150).step(1);gui.add(ctrl, maxRadi…

2021深圳各中学高考成绩查询,深圳四大高中在2021年高考深一模的前500名分布数据...

看到深圳四大高中在2021年高考深一模的前500名分布数据:深圳中学名列前茅,前500名中占166席,且文科、理科第一名均来自深中;物理方向前10名中深中6人,实验3人;历史方向前10名中深中3人。深圳实验学校高中部有84人进入前…

微型计算机各部件之间通过总线传递各种信息,2015年9月计算机一级考试基础及MSOffice应用选择真题...

一、选择题(每小题1分,共20分)1、控制器的主要功能是 .A.指挥计算机各部件自动、协调地工作B.对数据进行算术运算C.进行逻辑判断D.控制数据的输入和输出2、下列度量单位中,用来度量CPU时钟主频的是 .A.MB&a…

土木工程计算机仿真学科未来前景,同济大学土木工程学院土木工程计算机仿真2010级学历教育硕士--培养方案...

一、简介土木工程计算机仿真学科是土木工程属下的二级学科,在国民经济建设中有着重要的地位,在促进城市建设、社会发展过程中做出了重大贡献。土木工程计算机仿真是同济大学于2005年自主设立的二级学科,虽然设立时间不长,但取得的…

html推箱子怎么清除走过的,第九讲:HTML5该canvas推箱子原型实现

动body{margin:0px;padding:0px;}#main{margin: 100 auto 0 auto;border: 10px solid #030303;300px;height:460px;border-radius:10px;}var canvas document.getElementById(mc);var cxt canvas.getContext(2d);//定义背景的颜色function init_background(){cxt.fillStyle …

大学计算机要学多久,大学刚开学要不要带电脑?很多人都很后悔,学长学姐把经验告诉你...

大学刚开学要不要带电脑?很多人都很后悔,学长学姐把经验告诉你文/小川说车况大学刚开学,学生们要不要带电脑呢,想必这个问题一直对还没进入大学的准大学生来说很困扰,一方面既担心在学校里面用电脑的时候不方便&#x…

西南医科大学计算机应用基础历年真题,网络选修课-计算机应用基础-期末考.docx...

1 单选 (1 分)Outlook 数据文件的扩展名是().A..patB..datC..ptsD..dll正确答案: A2Windows 系统中 ,若 2 个纯文本文件分别包含100 和 200 个英文字符 ,下列关于它们占用磁盘空间大小的说法中,正确的是 ().A.前者大于后者B.不确定 C.后者大于前者D.两者相等正确答案…

html自定义js程序,JS中微信小程序自定义底部弹出框

实现微信小程序底部弹出框效果,代码分为html,css和js两部分,具体代码详情大家参考下本文。htmlCSS.commodity_screen {width: 100%;height: 100%;position: fixed;top: 0;left: 0;background: #000;opacity: 0.2;overflow: hidden;z-index: 1…

怎么知道自己是否适合计算机专业,事实:我怎么知道我的旧计算机是否适合win7或win10?...

实际上,win10并不大!只是对内存和硬盘的要求更高!根据官方的最低操作要求,硬件要求如下:1、[处理器]:Win10系统的安装要求计算机的处理器以不低于1GHz的速度运行2、[运行内存]:Win10 32位操作系…

html5 canvas ios限制,HTML5画布的drawImage比错误的iOS(HTML5 Canvas drawImage ra

我想调整从iOS相机上使用HTML5画布客户端拍摄的图像,但我一直在这个奇怪的错误,这错误的图像有一个错误的比率,如果运行超过〜1.5MB大它的工作原理在桌面上,但不是在最新的iOS版本,媒体上传API。:你可以在这…

金工如何运用计算机思维,金工实训心得体会

金工实训心得体会我们有一些启发后,就很有必要写一篇心得体会,如此可以一直更新迭代自己的想法。那么心得体会到底应该怎么写呢?以下是小编为大家整理的金工实训心得体会,希望能够帮助到大家。金工实训心得体会1时间过得真快&…