全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Android自定义控件绘制基本图形基础入门

本文讲述绘制Android自定义各种图形效果,为自定义控件的入门篇

相关视频链接:

Android自定义控件系列
http://edu.csdn.net/course/detail/3719/65396
Android视频全系列
http://edu.csdn.net/course/detail/2741/43163

绘制点–这个控件只需要在布局中引用或者代码中new 即可,下面几个绘制只展示onDraw方法

package com.example.viewdemo1.view;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Style;
import android.util.AttributeSet;
import android.view.View;

public class PointView extends View {

 public PointView(Context context, AttributeSet attrs, int defStyleAttr) {
  super(context, attrs, defStyleAttr);
 }

 public PointView(Context context, AttributeSet attrs) {
  super(context, attrs);
 }

 public PointView(Context context) {
  super(context);
 }

 @Override
 protected void onDraw(Canvas canvas) {
  super.onDraw(canvas);
  // 对于画笔
  Paint paint = new Paint();
  // 设置抗锯齿
  paint.setAntiAlias(true);
  // 设置画笔颜色
  paint.setColor(Color.RED);
  // 三种样式
  paint.setStyle(Style.FILL_AND_STROKE);
  paint.setStrokeWidth(5);
  // 阴影
  paint.setShadowLayer(10, 0, 0, Color.CYAN);
  // 点的坐标 x0,y0,x1,y1......
  float[] pts = { 50, 50, 100, 100, 200, 200, 300, 300, 0, 100, 100, 0 };
  canvas.drawPoints(pts, paint);
  // 绘制点的时候,隔着几个点绘制几个,最多不到多少点
  canvas.drawPoints(pts, 1, 6, paint);
 }

}

绘制线

@Override
 protected void onDraw(Canvas canvas) {
  super.onDraw(canvas);
  // 对于画笔
  Paint paint = new Paint();
  // 设置抗锯齿
  paint.setAntiAlias(true);
  // 设置画笔颜色
  paint.setColor(Color.RED);
  // 三种样式
  paint.setStyle(Style.FILL);
  paint.setStrokeWidth(0.5f);
  // 阴影
  // paint.setShadowLayer(10, 0, 0, Color.CYAN);
  // x0,y0,x1,y1
  float[] pts = { 100, 100, 200, 200, 200, 200, 300, 200, 300, 200, 300,
    400 };
  // 以上是6个点的x,y坐标,两两连成线段
  canvas.drawLines(pts, paint);
  // 画一条线
  canvas.drawLine(0, 0, 100, 100, paint);

  }

绘制圆

//指定圆心坐标,半径就OK
canvas.drawCircle(100, 100, 100, paint);

绘制文字

//设置文字大小
paint.setTextSize(40);
//指定坐标,最好指定文字大小
canvas.drawText("哈", 100, 500, paint);
//将文字设置到指定路径上
Path path = new Path();
paint.setTextSize(50);
path.addCircle(200, 200, 150, Direction.CCW);
canvas.drawTextOnPath("我爱你我的祖国,我爱你我亲爱的姑娘", path, 0, 0, paint);

绘制矩形

// 阴影
paint.setShadowLayer(10, 0, 0, Color.CYAN);
// x y 坐标 及半径值
// canvas.drawCircle(100, 100, 50, paint);
canvas.drawRect(50, 50, 300, 300, paint);

绘制圆弧 

 //指定放置圆弧的矩形
 RectF oval=new RectF(10,10,210,210);
 //绘制圆弧-0是指开始度数,270是指结束度数 false是指不连接圆心,paint是画笔
 canvas.drawArc(oval, 0, 270, false, paint);

绘制椭圆

//指定矩形,指定画笔
canvas.drawOval(oval, paint);

以上就是基本图形的绘制了…very easy。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Android自定义控件绘制基本图形  # Android绘制基本图形  # Android基本图形绘制方法  # Android开发 OpenGL ES绘制3D 图形实例详解  # Android开发之OpenGL绘制2D图形的方法分析  # Android openGl 绘制简单图形的实现示例  # Android编程开发之在Canvas中利用Path绘制基本图形(圆形  # 矩形  # 椭圆  # 三角形等)  # Android编程之canvas绘制各种图形(点  # 直线  #   #   # 文字  # 多边形  # 曲线  # 圆角矩形)  # Android自定义View实现shape图形绘制  # Android开发实现各种图形绘制功能示例  # android绘制几何图形的实例代码  # Android shape 绘制图形的实例详解  # Android中常见的图形绘制方式总结  # 几个  # 是指  # 自定义  # 三种  # 抗锯齿  # 最多  # 只需  # 我爱  # 要在  # 你我  # 隔着  # 全系列  # 大家多多  # 画一  # 入门篇  # AttributeSet  # View  # util  # Canvas  # graphics 


相关文章: 利用JavaScript实现拖拽改变元素大小  香港服务器如何优化才能显著提升网站加载速度?  深圳网站制作平台,深圳市做网站好的公司有哪些?  定制建站方案优化指南:企业官网开发与建站费用解析  如何快速搭建虚拟主机网站?新手必看指南  如何挑选优质建站一级代理提升网站排名?  微课制作网站有哪些,微课网怎么进?  如何快速使用云服务器搭建个人网站?  大连 网站制作,大连天途有线官网?  广州美橙建站如何快速搭建多端合一网站?  专业网站制作服务公司,有哪些网站可以免费发布招聘信息?  如何快速搭建响应式可视化网站?  建站之星安装路径如何正确选择及配置?  ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?  如何撰写建站申请书?关键要点有哪些?  如何使用Golang安装API文档生成工具_快速生成接口文档  如何通过虚拟主机快速搭建个人网站?  如何在景安云服务器上绑定域名并配置虚拟主机?  C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换  建站之星后台密码遗忘或太弱?如何重置与强化?  建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解  网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  建设网站制作价格,怎样建立自己的公司网站?  javascript中的try catch异常捕获机制用法分析  如何优化Golang Web性能_Golang HTTP服务器性能提升方法  如何配置IIS站点权限与局域网访问?  建站主机如何选?高性价比方案全解析  如何通过FTP空间快速搭建安全高效网站?  平台云上自助建站如何快速打造专业网站?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  ,如何利用word制作宣传手册?  专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?  网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?  制作农业网站的软件,比较好的农业网站推荐一下?  如何获取免费开源的自助建站系统源码?  建站主机选哪家性价比最高?  黑客如何通过漏洞一步步攻陷网站服务器?  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  网站设计制作公司地址,网站建设比较好的公司都有哪些?  如何基于PHP生成高效IDC网络公司建站源码?  建站VPS推荐:2025年高性能服务器配置指南  ,制作一个手机app网站要多少钱?  孙琪峥织梦建站教程如何优化数据库安全?  枣阳网站制作,阳新火车站打的到仙岛湖多少钱?  已有域名和空间,如何快速搭建网站?  音响网站制作视频教程,隆霸音响官方网站?  建站中国官网:模板定制+SEO优化+建站流程一站式指南 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。