//---------------------------------------------------------------------------------------------------------------------------------  
/*--------------- normalDrawable begin ---------------*/
GradientDrawable normalDrawable = new GradientDrawable();
// 得到随机颜色
Random random = new Random();
int alpha = 255;
int green = random.nextInt(190) + 30; // 30-220
int red = random.nextInt(190) + 30;// 30-220
int blue = random.nextInt(190) + 30;// 30-220
int argb = Color.argb(alpha, red, green, blue);
// 设置填充颜色
normalDrawable.setColor(argb); // 设置圆角半径
normalDrawable.setCornerRadius(UIUtils.dip2Px(6));
/*--------------- normalDrawable end ---------------*/
//-----------------------------------------------------------------------------------------------------------------------------------------------
/*--------------- pressedDrawable begin ---------------*/
GradientDrawable pressedDrawable = new GradientDrawable();
pressedDrawable.setColor(Color.DKGRAY);
pressedDrawable.setCornerRadius(UIUtils.dip2Px(6));
/*--------------- pressedDrawable end ---------------*/
//-------------------------------------------------------------------------------------------------------------------------------------------
// 设置一个状态图片
StateListDrawable stateListDrawable = new StateListDrawable();
// @attr ref android.R.styleable#DrawableStates_state_pressed
stateListDrawable.addState(new int[] { android.R.attr.state_pressed }, pressedDrawable);
stateListDrawable.addState(new int[] {}, normalDrawable);

需求说明:这两个类GradientDrawable和StateListDrawable;

GradientDrawable:可以自定义颜色,圆角。

StateListDrawable:就是一个状态选择器。

介绍两个Android不常用的Drawable:GradientDrawable和 StateListDrawable的更多相关文章

  1. 介绍两款常用的“图表统计图"的插件

    一.相信朋友们在开发的过程中都会使用到“数据统计”的功能,图表的统计更为直观,在这里就介绍两款插件:fusionChart.DataVisualization. 1.fusionChart实际项目中用 ...

  2. Android开发常用工具类

    来源于http://www.open-open.com/lib/view/open1416535785398.html 主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java. 目前 ...

  3. Android ListView 常用技巧

    Android ListView 常用技巧 Android TextView 常用技巧 1.使用ViewHolder提高效率 ViewHolder模式充分利用了ListView的视图缓存机制,避免了每 ...

  4. Android样式的开发:drawable汇总篇

    Android有很多种drawable类型,除了前几篇详细讲解的shape.selector.layer-list,还有上一篇提到的color.bitmap.clip.scale.inset.tran ...

  5. 最全Android开发常用工具类

    主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java. 目前包括  HttpUtils.DownloadManagerPro.Safe.ijiami.ShellUtils.Pack ...

  6. Android之常用开发框架

    1.Rajawali介绍:安卓的OpenGL ES 2.0/3.0 引擎.可以用于制作普通应用或者动态壁纸,当然也可以用于制作游戏.项目地址: https://github.com/Rajawali/ ...

  7. Android笔记---常用控件以及用法

    这篇文章主要记录下Android的常用控件以及使用的方法,Android 给我们提供了大量的UI控件,合理地使用这些控件就可以非常轻松地编写出相当不错的界面,这些是Android学习的基础,没有什么业 ...

  8. 【Android - 进阶】之Drawable简介

    Drawable是什么?Android给我们的解释是:“A general abstraction for 'something that can be drawn'.”,翻译过来就是:对于可以绘制的 ...

  9. Android ListView 常用技巧总结

    本文对 ListView 中的一些常用技巧做一个总结.附:虽然现在 RecyclerView 已逐渐取代 ListView,但实际情况是大部分项目中还在使用 ListView.当然,后续我会在我的博客 ...

随机推荐

  1. AOV网

    1.定义 用顶点表示活动,用有向边<Vi, Vj>表示活动间的优先关系. Vi必须先于活动Vj进行. 这种有向图叫做顶点表示活动的AOV网络(Activity On Vertices) 2 ...

  2. SourceInsight - 常用设置和快捷键大全

    1. 让{ 和 } 不缩进 Options -> Document Options -> Auto Indenting -> Auto Indent Type 选 Simple 2. ...

  3. vultr使用snapshots系统镜像备份安装vps

    vultr vps提供免费的snapshots功能,把你的vps做成镜像备份,在必要的时候可以恢复.如果你要配置多台机器,使用Snapshots非常方便好用. vultr添加snapshots很简单, ...

  4. 深度探索C++对象模型之C++对象模型笔记

    0.菜鸟觉得,在看这本书的时候最好切换角色,把自己的思维转换成编译器开发者,去考虑问题,这样会容易理解些.(当然这样很难,就想着自己要解决什么样的问题好了) 1.在C++中,类的数据成员有两种:静态和 ...

  5. Channel Allocation(DFS)

    Channel Allocation Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 20000/10000K (Java/Other) ...

  6. 证明:一个整数a若不能被6整除,则a2+24必能被24整除。(整除理论,1.1.4)

    证明:一个整数a若不能被6整除,则a2+24必能被24整除. 证明: 因为,a不能被6整除 所以,a不可以同时被2和3整除 所以,a一定是一个奇数, 所以,令a=2k+1,k是整数: 又因为,a2+2 ...

  7. 基于ZooKeeper的分布式Session实现

    1.   认识ZooKeeper ZooKeeper—— “动物园管理员”.动物园里当然有好多的动物,游客可以根据动物园提供的向导图到不同的场馆观赏各种类型的动物,而不是像走在原始丛林里,心惊胆颤的被 ...

  8. html5学习(一) video字段

    html5对视频的支持: html5通过<video></video>字段实现web页面上视频的播放功能. 目前各大浏览器对<video>字段的支持: 当前,vid ...

  9. 图片(img标签)大小自适应

    $(function(){ var myimg,oldwidth,oldheight; var maxwidth=249; var maxheight=187; var imgs = document ...

  10. JavaScript在智能手机上的应用-使用手机GPS定位用户所在城市

    ---------------------------- <script type="text/javascript" language="javascript&q ...