本文实例讲述了Android编程之阴影(Shadow)制作方法。分享给大家供大家参考,具体如下:

先看运行效果图如下:

阴影制作:包括各种形状(矩形,圆形等等),以及文字等等都能设置阴影。

阴影制作是什么原理呢?

其实很简单,你需要设置阴影的东西被看作一个主层。然后在主层下面画一个阴影层。

阴影制作涉及到一个重要函数:public void setShadowLayer (float radius, float dx, float dy, int color)

参数:

radius:阴影半径

dx:X轴方向的偏移量

dy:Y轴方向的偏移量

color:阴影颜色

注意:如果半径被设置为0,意思就是去掉阴影。

具体实现:package xiaosi.textShadow;import android.app.Activity;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.os.Bundle;import android.view.View;public class TextShadowActivity extends Activity{ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(new drawCanvas(this)); } class drawCanvas extends View { private Bitmap bitmap = null; public drawCanvas(Context context) { super(context); bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.i_skinprocess); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); // 建立Paint 物件 Paint paint1 = new Paint(); // 设定颜色 paint1.setColor(0xFFFFFF00); // 设定阴影(柔边, X 轴位移, Y 轴位移, 阴影颜色) paint1.setShadowLayer(5, 3, 3, 0xFFFF00FF); // 实心矩形& 其阴影 canvas.drawText("我很爱你", 20,40,paint1); Paint paint2 = new Paint(); paint2.setColor(Color.GREEN); paint2.setShadowLayer(10, 5, 2, Color.YELLOW); canvas.drawText("你真傻", 20,60,paint2); Paint paint3 = new Paint(); paint3.setColor(Color.RED); paint3.setShadowLayer(30, 5, 2, Color.GREEN); canvas.drawCircle(50, 130,30, paint3); Paint paint4 = new Paint(); paint4.setShadowLayer(5, 8, 7, Color.DKGRAY); canvas.drawBitmap(bitmap, 50, 200, paint4); } }}

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。

android bitmap 阴影,Android编程之阴影(Shadow)制作方法相关推荐

  1. android bitmap对比,Android Bitmap和Drawable的对比

    Android Bitmap和Drawable的对比 Bitmap - 称作位图,一般位图的文件格式后缀为bmp,当然编码器也有很多如RGB565.RGB888.作为一种逐像素的显示对象执行效率高,但 ...

  2. android bitmap string,Android Bitmap到Base64字符串(Android Bitmap to Base64 String)

    Android Bitmap到Base64字符串(Android Bitmap to Base64 String) 如何将一个大的Bitmap(用手机相机拍摄的照片)转换为Base64 String? ...

  3. android bitmap回收,android BitMap回收

    bitmap在android中使用较多,但是如果不对其进行回收,将会导致内存问题. [第一种方法]及时回收bitmap内存: 一般而言,回收bitmap内存可以用到以下代码 if(bitmap != ...

  4. android bitmap 描边,Android如何实现带描边的圆角图片

    Android如何实现带描边的圆角图片 发布时间:2021-04-16 13:53:03 来源:亿速云 阅读:99 作者:小新 这篇文章给大家分享的是有关Android如何实现带描边的圆角图片的内容. ...

  5. android bitmap着色,android开发 替换bitmap中的颜色值

    /** * 将bitmap中的某种颜色值替换成新的颜色 * @param bitmap * @param oldColor * @param newColor * @return */ public ...

  6. android bitmap对象,android 创建bitmap的多种方式

    –Bitmap代表这一张位图,BitmapDrawable里封装的图片就是一个Bitmap对象.如果要将Bitmap对象封装成BitmapDrawable对象只需要用构造方法即可. //讲bitmap ...

  7. android bitmap nv21,Android开发之虹软人脸识别活体检测SDK包Bitmap转NV21方法

    /** * Bitmap 转化为 ARGB 数据,再转化为 NV21 数据 * * @param src 传入的 Bitmap,格式为 Bitmap.Config.ARGB_8888 * @param ...

  8. 局部遮荫光伏matlab,一种基于随机蛙跳全局搜索算法的局部阴影光伏阵列MPPT控制的制作方法...

    本发明涉及一种局部阴影光伏阵列多峰MPPT控制方法,特别涉及一种基于随机蛙跳全局搜索算法的局部阴影光伏列阵多峰MPPT控制. 背景技术: 伴随太阳能发电的普及,光伏阵列的运行环境变的越来越复杂,局部遮 ...

  9. android+蓝牙体温计,一种蓝牙体温计的制作方法

    本发明涉及一种体温计,具体是一种蓝牙体温计. 背景技术: 水银温度计,是膨胀式温度计的一种,水银的凝固点是-39℃,沸点是356.7℃,测量温度范围是-39°C-357°C,用它来测量温度,不仅简单直 ...

最新文章

  1. 【Manning新书】Kafka实战
  2. Studio右键选项中没有Git?
  3. ios wkweb设置图片_iOS WKWebView的使用
  4. 页面加载速度-合并资源文件
  5. 冰雪复古鸿蒙碎片哪里出,冰雪复古:玩法攻略,如何高爆率搞回收!
  6. 案例 TreeView动态控制节点 c# 1614264758
  7. 【iCore3双核心板】发布 iCore3 应用开发平台硬件原理图
  8. Linux定时器:无节拍机制tickless(CONFIG_NO_HZ)
  9. 关了浏览器再开,怎么session还在?
  10. 5201314用计算机怎么打出来,计算器算出5201314抖音
  11. Vue.js尚硅谷视频学习笔记(第一章:Vue 核心)
  12. 在线体验四大名著情景(地图、游戏)
  13. Number精度超了怎么办
  14. ODM/OEM/OBM区分
  15. [深度学习概念]·声纹识别技术简介
  16. Elasticsearch安装操作步骤
  17. JAVA在线教育视频点播学习系统毕业设计 开题报告
  18. 一个解决MacBook Pro 突然连接无线不能上网 方案
  19. win7开启uasp协议_移植win8通用USB驱动到win7上并开启UASP功能!
  20. java公路车等级_CANNONATA康纳塔 JAVA发布2016款终极赛车

热门文章

  1. 短视频抢不走阅文的生意
  2. 【python科研绘图】封装接口直接利用DataFrame绘制百分比堆叠柱状图
  3. leetcode 803 打砖块
  4. 编程十年 (15):宿命,程序员
  5. 【一】Qsys的软核知识记录
  6. ZooKeeper 集群
  7. 【牛客网 - 华为机试 - HJ15 求int型正整数在内存中存储时1的个数】
  8. 未能连接重庆网上银行服务器,安装重庆银行“网上银行安全套件”后,键盘无法使用的解决方案...
  9. Python画图中颜色的选择
  10. 小米M1/M1S 刷机4.4.2ROM