当前位置: 首页 > backend >正文

android drawtext 方法,8.2.13 drawText方法:绘制字符串

8.2.13  drawText方法:绘制字符串

【功能说明】该方法用于在画布上绘制字符串,通过指定字符串的内容和显示的位置来实现。在画布上绘制字符串是经常用到的操作,Android系统提供了非常灵活的绘制字符串的方法,可以根据不同的需要调用不同的方法来实现。字体的大小、样式等信息都需要在Paint画笔中来指定。

【基本语法】drawText方法可以采用如下几种形式:

public void drawText (String text, float x, float y, Paint paint)

public void drawText (char[] text, int index, int count, float x, float y, Paint paint)

public void drawText (CharSequence text, int start, int end, float x, float y, Paint paint)

public void drawText (String text, int start, int end, float x, float y, Paint paint)

参数说明

text:字符串内容,可以采用String格式,也可以采用char字符数组形式。

x:显示位置的x坐标。

y:显示位置的y坐标。

index:显示的起始字符位置。

count:显示字符的个数。

start:显示的起始字符位置。

end:显示的终止字符位置。

paint:绘制时所使用的画笔。

【实例演示】下面通过代码来演示如何在画布上绘制字符串。protected void onDraw(Canvas canvas) {

// TODO Auto-generated method stub

super.onDraw(canvas);

paint.setAntiAlias(true);                                   //设置画笔为无锯齿

paint.setColor(Color.BLACK);                                //设置画笔颜色

canvas.drawColor(Color.WHITE);                              //白色背景

paint.setTextSize((float) 30.0);                            //设置字体大小

Stringstr="Android应用程序开发";                         //字符串

char[]ch={'H','e','l','l','o',' ','A','n','d','r','o','i','d'};    //字符数组

canvas.drawText(str, 50, 200, paint);                           //绘制字符串

canvas.drawText(ch, 0, ch.length, 50, 300, paint);              //绘制字符串

canvas.drawText(str+" API详解", 0, str.length()+6, 50, 400, paint);//绘制字符串

canvas.drawText(str, 7, str.length(), 50, 500, paint);          //绘制字符串

}

在这段代码中,首先设置了画笔的属性以及画布的背景颜色,然后初始化了字符串和字符数组。接着,分别调用drawText的4种方式来在画布上绘制字符串。读者运行这段代码,可以在手机屏幕上看到如图8.23所示的显示效果。

7baf26d675e993cf0483e400c587bc4e.png

图8.23  绘制字符串

【责任编辑:book TEL:(010)68476606】

点赞 0

http://www.xdnf.cn/news/11440.html

相关文章:

  • Windows系统字体优化方案(系统字体替换)
  • AAV相关研究最新进展(2023年5月)
  • 针对centos(Linux)多网卡bond绑定模式及其操作
  • LinearLayout
  • 29 | 分布式高可靠之流量控制:大禹治水,在疏不在堵
  • 【Android OpenGL开发】OpenGL ES与EGL介绍
  • ContentProvider的相关知识总结
  • 新加坡云服务器推荐 - 适合跨境外贸等业务
  • 2 v11补丁安装_老款macbook机型欺骗补丁强制安装macOS11 Big Sur图文详解
  • Linux下权限的修改-JDK的配置-文件的常见操作
  • Java学习 布局管理器之GridLayout(网格布局)
  • 企业最新几种好用的数据同步工具对比
  • Qt 多线程的几种实现方式
  • Linux系统三步安装QQ
  • C/C++网络编程
  • JSTL-核心标签库
  • 动态域名内网穿透(永久免费)
  • 设计模式七大原则-迪米特法原则
  • 安全小课堂丨什么是暴力破解?如何防止暴力破解
  • 谷歌浏览器、Yandex浏览器使用体验分享
  • 光流法(optical flow)简介
  • 13800138000来电?手机管家:小心诈骗
  • Windows 10 离线安装 .NET Framework 3.5 的方法和技巧
  • WISP模式
  • waterdrop介绍
  • CreateThread()函数及_beginthreadex()函数
  • C++ ofstream和ifstream详细用法
  • 使用Latex制作分享,演讲,Presentation用的Slides,PPT——Beamer教程
  • .htaccess语法讲解
  • [Linux系列]Chrony时间同步服务器