先上图:

非常easy

第一步:找到一张哆啦A梦的照片

第二部:image.setBackgroundResource(R.drawable.XX);

哆啦A梦就出来了

是不是非常easy...

以上是玩笑话..以下我们用代码来实现

首先,自己定义一个View,并实现构造方法


public class MyView extends View {public MyView(Context context) {
super(context);
// TODO Auto-generated constructor stub
}public MyView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
// TODO Auto-generated constructor stub
}public MyView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
}} 

然后在onDraw函数中实现画图

@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
}

先初始化RectF和Paint

mRect = new RectF(getWidth(), getHeight(), getRight(), getBottom());if (mPaint == null) {
mPaint = new Paint();
} else {
mPaint.reset();
}
mPaint.setAntiAlias(true);// 边缘无锯齿</span>

然后先画最外面蓝色的圆:

首先给圆的半径radius赋值。然后设置颜色以及style,最后画出一个半径为radius的圆

radius = getWidth() / 2;
mPaint.setColor(mBlue);
mPaint.setStyle(Paint.Style.FILL);
canvas.drawCircle(getWidth() / 2, getHeight() / 2, radius, mPaint); 

然后再画一个半径比这个圆大1的空心圆,显示描边的效果

mPaint.setColor(mBlack);
mPaint.setStrokeWidth(mStrokeWidth);
mPaint.setStyle(Paint.Style.STROKE);// 设置空心
mRect.set(getWidth() / 8, (getHeight() - radius) * 3 / 4,getWidth() * 3 / 4, getHeight() * 3 / 4 + radius / 2);

然后画出第二层白色的椭圆。剩下的就不贴代码了,在这里就仅仅是说一下思路

首先画出最外层蓝色的圆以及描边,然后里面画一个白色的椭圆和描边,然后先画左眼和右眼以及眼珠和瞳孔,接下来画鼻子和胡须,最后再画嘴巴,主要用到的知识点有paint画圆、椭圆、斜线、贝塞尔曲线,代码中有些值我这里为了方便写死了...所以在不同机型上显示出来的效果可能有所差异,但重在思想...

源代码下载地址:http://download.csdn.net/detail/qq_18612815/9420631

Android用canvas画哆啦A梦相关推荐

  1. PHP画a梦,使用canvas画“哆啦A梦”时钟的代码

    这篇文章主要介绍了JavaScript学习小结之使用canvas画"哆啦A梦"时钟的相关资料,需要的朋友可以参考下 前言:今天看完了Js书的canvas画布那张,好开心~又是心爱的 ...

  2. 【前端学习笔记—canvas标签和使用canvas画哆啦A梦案例】

    目录 canvas 1. canvas是H5新增标签 2.使用canvas画出矩形 (1)第一步,要新建画布 (2)第二步,要创建一支画笔 (3)第三步,用canvas画出矩形 3. 如何使用canv ...

  3. canvas 画哆啦A梦头像

    正好最近学到了canvas,要做一个哆啦A梦,感觉做出来很可爱,想分享给大家,第一次写博客,有什么问题或者优化可以给我建议哦! 首先需要先建起画布 <canvas id="canvas ...

  4. 用canvas画“哆啦A梦”时钟

    前言:今天看完了Js书的canvas画布那张,好开心~又是心爱的canvas~欧耶~ 之前看到有人建议我画蓝胖子,对哦,我怎么把童年最喜欢的蓝胖子忘了,为了表达我对蓝胖子的歉意,所以今天画了会动的he ...

  5. 用python画哆啦a梦的身体_每天一个Python小技巧,用Python 画个多啦A梦,小猪佩奇,文末还有Python入门学习视频...

    见网络上有人用Python 画出来个多啦A梦,很是新奇,来来来,我们看一下他们主要用到的库. 其实主要用的库就一个 turtle 库 先说明一下turtle绘图的基础知识: 1. 画布(canvas) ...

  6. 哆啦a梦简单图画python编程_[python]画哆啦A梦,Python,绘制

    from turtle import * #无轨迹跳跃 defmy_goto(x, y): penup() goto(x, y) pendown()#眼睛 defeyes(): fillcolor(& ...

  7. 多啦a梦的python代码_分享一篇文本文档画哆啦A梦代码!

    #encoding=utf-8 #Drawcat 画多啦A梦 from turtle import * # 无轨迹跳跃 def my_goto(x, y): penup() goto(x, y) pe ...

  8. MATLAB画哆啦A梦

    MATLAB画哆啦A梦 %===========================================% %--------------MATLAB绘制哆啦A梦-------------% ...

  9. 用Python画哆啦A梦

    from turtle import *# 无轨迹跳跃 def my_goto(x, y):penup()goto(x, y)pendown()# 眼睛 def eyes():fillcolor(&q ...

最新文章

  1. docker笔记1----Get Docker
  2. (转)从一道面试题彻底搞懂hashCode与equals的作用与区别及应当注意的细节
  3. 043_CSS32D转换
  4. C语言rand(),srand()函数真实性能分析
  5. django settings 定义的变量不存在_Django基础框架搭建
  6. 怡丰机器人上市_【利元亨 | 复盘】十家自动停车机器人大PK,你更看好谁?
  7. 自动化测试元素查找利器firepath介绍
  8. Linux不重启Tomcat清空catalina.out日志的几种方法
  9. win7 IIS7 HTTP 错误 404.2 - Not Found的解决方法
  10. qt中文显示乱码问题
  11. skywalking学习
  12. 详细介绍如何在ubuntu20.04中安装ROS系统,超快完成安装(最新版教程)
  13. win7、win10常用快捷键
  14. 6.2 病毒机制与组成结构
  15. google chrome F11全屏快捷键
  16. 国庆七天乐,要猛! ——经典迷宫问题
  17. ts16949 软件开发流程图_TS16949体系过程流程图(1)
  18. Java使用Hutools工具类发送腾讯企业邮箱
  19. 【小米集团】2019校招在线考试-算法试卷编程题
  20. 机器学习强基计划4-2:通俗理解极大似然估计和极大后验估计+实例分析

热门文章

  1. Cognos 增加全局类
  2. 如何找到最快的DNS服务器!!
  3. 使用 imitator 实现前后端分离开发中的数据模拟与静态资源映射
  4. 使用正当时!用扩展全面武装Firefox
  5. Node.js 修复4个漏洞
  6. [20180626]函数与标量子查询14.txt
  7. 分享Silverlight/WPF/Windows Phone/HTML5一周学习导读(1月9日-1月15日)
  8. [转载] 中国象棋软件-引擎实现(二)棋局表示
  9. Smali动态调试方法
  10. windows2003密码忘记了该如何处理