具体的看一下博文:Android学习笔记进阶15之Shader渲染

  1. package xiaosi.BitmapShader;
  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. public class BitmapShaderActivity extends Activity {
  5. /** Called when the activity is first created. */
  6. private BitmapShaders bitmapShaders = null;
  7. @Override
  8. public void onCreate(Bundle savedInstanceState) {
  9. super.onCreate(savedInstanceState);
  10. bitmapShaders = new BitmapShaders(this);
  11. setContentView(bitmapShaders);
  12. }
  13. }

BitmapShaders.Java

    1. package xiaosi.BitmapShader;
    2. import android.content.Context;
    3. import android.graphics.Bitmap;
    4. import android.graphics.BitmapShader;
    5. import android.graphics.Canvas;
    6. import android.graphics.Color;
    7. import android.graphics.ComposeShader;
    8. import android.graphics.LinearGradient;
    9. import android.graphics.Paint;
    10. import android.graphics.PorterDuff;
    11. import android.graphics.RadialGradient;
    12. import android.graphics.Shader;
    13. import android.graphics.SweepGradient;
    14. import android.graphics.drawable.BitmapDrawable;
    15. import android.graphics.drawable.ShapeDrawable;
    16. import android.graphics.drawable.shapes.OvalShape;
    17. import android.view.View;
    18. public class BitmapShaders extends View
    19. {
    20. private LinearGradient linearGradient = null;
    21. private ComposeShader composeShader = null;
    22. private SweepGradient sweepGradient = null;
    23. private RadialGradient radialGradient = null;
    24. private BitmapShader bitmapShader = null;
    25. private Bitmap bitmap = null;
    26. private Paint paint = null;
    27. private ShapeDrawable shapeDrawable = null;
    28. private int BitmapWidth = 0;
    29. private int BitmapHeight = 0;
    30. public BitmapShaders(Context context)
    31. {
    32. super(context);
    33. // 得到图像
    34. bitmap = ((BitmapDrawable) getResources().getDrawable(R.drawable.v))
    35. .getBitmap();
    36. BitmapWidth = bitmap.getWidth();
    37. BitmapHeight = bitmap.getHeight();
    38. // 构造渲染器LinearGradient
    39. linearGradient = new LinearGradient(0, 0, 100, 100, new int[] {
    40. Color.RED, Color.GREEN, Color.BLUE, Color.WHITE }, null,
    41. Shader.TileMode.REPEAT);
    42. paint = new Paint();
    43. }
    44. @Override
    45. protected void onDraw(Canvas canvas)
    46. {
    47. super.onDraw(canvas);
    48. paint.setShader(linearGradient);
    49. canvas.drawRect(20, 50, 320, 156, paint);
    50. }
    51. }

Android学习笔记进阶17之LinearGradient的更多相关文章

  1. Android学习笔记进阶之在图片上涂鸦(能清屏)

    Android学习笔记进阶之在图片上涂鸦(能清屏) 2013-11-19 10:52 117人阅读 评论(0) 收藏 举报 HandWritingActivity.java package xiaos ...

  2. Android学习笔记进阶16之BitmapShader

    <1>简介 具体的看一下博文:Android学习笔记进阶15之Shader渲染 public   BitmapShader(Bitmap bitmap,Shader.TileMode ti ...

  3. Android学习笔记进阶18 之画图并保存图片到本地

    1.首先创建一个Bitmap图片,并指定大小:   2.在该图片上创建一个新的画布Canvas,然后在画布上绘制,并保存即可:   3.需要保存的目录File,注意如果写的目录如“/sdcard/so ...

  4. Android学习笔记进阶18之画图并保存图片到本地

    1.首先创建一个Bitmap图片,并指定大小:   2.在该图片上创建一个新的画布Canvas,然后在画布上绘制,并保存即可:   3.需要保存的目录File,注意如果写的目录如“/sdcard/so ...

  5. Android学习笔记进阶15之Shader渲染

    Android提供的Shader类主要是渲染图像以及一些几何图形. Shader有几个直接子类: BitmapShader    : 主要用来渲染图像 LinearGradient  :用来进行线性渲 ...

  6. Android 学习笔记进阶十二之裁截图片

    package xiaosi.cut; import java.io.File; import android.app.Activity; import android.content.Intent; ...

  7. Android 学习笔记进阶14之像素操作

    在我们玩的游戏中我们会经常见到一些图像的特效,比如半透明等效果.要实现这种半透明效果其实并不难,需要我们懂得图像像素的操作. 不要怕,其实在Android中Bitmap为我们提供了操作像素的基本方法. ...

  8. Android学习笔记进阶19 之给图片加边框

    //设置颜色 public void setColour(int color){ co = color; } //设置边框宽度 public void setBorderWidth(int width ...

  9. Android学习笔记进阶20 之得到图片的缩略图

    <1>简介 之前往往是通过Bitmap.Drawable和Canvas配合完成,需要写一系列繁杂的逻辑去缩小原有图片,从而得到缩略图. 现在我给大家介绍一种比较简单的方法:(网上有) 在A ...

随机推荐

  1. PKU 2288 Islands and Bridges 状态dp

    题意: 给你一张地图,上面有一些岛和桥.你要求出最大的三角哈密顿路径,以及他们的数量. 哈密顿路:一条经过所有岛的路径,每个岛只经过一次. 最大三角哈密顿路:满足价值最大的哈密顿路. 价值计算分为以下 ...

  2. android内存释放处理

    不知道大家对android内存释放都做什么样的处理,本人接触android不久,近期开发小游戏的过程中,由于游戏界面组件较多.刚玩游戏的时候感觉还好,可是重复进入游戏界面玩几次之后,游戏就会卡顿,我瞬 ...

  3. CheckBox:屏蔽setChecked方法对OnCheckedChangeListener的影响

    对于CheckBox的OnCheckedChangeListener,有两种情况下会被触发: (1)用户点击了一下CheckBox: (2)代码中调用了setChecked(boolean check ...

  4. Pretty UI Design For Android -- 滑动背景、透明列表

    本文是从国外一个网上看到的效果.感觉非常不错.就简化了一下代码.拿来用了,先看下效果图: 效果还是非常不错的,以下让我们看看是如何实现的: 看看文字来源,非常easy,是一个数组: <?xml ...

  5. SQL Server数据全同步及价值分析[终结版]

    SQL Server数据全同步[终结版] 版权全部.转载请注明出处.谢谢! 经过两天的同步编写和測试.出了第一个Release版本号: 1. 本函数仅支持单向同步.即从一个主数据库想多个从数据库同步 ...

  6. Function的一些结论与eval函数.

    1.1 函数的创建方式 1 函数声明 2 函数表达式 3 new Function // 1 function foo() {} // 2 var foo = function() {}; // 3 ...

  7. OpenGL编程逐步深入(三)在窗口中显示一个三角形

    这一节教程的内容会比较少,我们仅仅是对上一节教程中的代码进行扩展,在窗口中渲染一个三角形出来. 本节我们以下图所示正方形来讲解OpenGl中的坐标系统.当沿着Z轴负方向看时,可见顶点的坐标必须在这个正 ...

  8. 深入理解Android(5)——从MediaScanner分析Android中的JNI

    前面几篇介绍了Android中的JNI和基本用法,这一篇我们通过分析Android源代码中的JNI实例,来对JNI部分做一个总结. 一.通向两个不同世界的桥梁 在前面我们说过,JNI就像一个桥梁,将J ...

  9. excel导入数据的

    .aspx 文件 <form id="form1" runat="server"> <div> <asp:FileUpload I ...

  10. 做raid1 经验总结

    背景: MHP 3楼一台ThinkServer  TS200 老服务器做RAID1,硬盘为: 2块3T RAID 设定里显示: 制作RAID1  只有700G多点可做. 系统安装: 可以正常在700G ...