在宽width高height的画布上画一字符串,使字符串水平竖直居中:

水平居中很简单,paint.setTextAlign(Align.CENTER);然后drawText的x坐标设置为width / 2即可,竖直居中稍显麻烦,可以使用FontMetrics对象计算文字高度,然后计算baseline,使文字垂直居中,代码如下:

Paint paint = new Paint();
paint.setColor(Color.BLUE);
paint.setTextSize(18);
paint.setTextAlign(Align.CENTER);

FontMetrics fontMetrics = paint.getFontMetrics();
// 计算文字高度
float fontHeight = fontMetrics.bottom - fontMetrics.top;
// 计算文字baseline
float textBaseY = height - (height - fontHeight) / 2 - fontMetrics.bottom;
canvas.drawText(text, width / 2, textBaseY, paint);

更多相关文章

  1. 我的Android进阶之旅------>Android颜色值(#AARRGGBB)透明度百分比
  2. Android(安卓)计算执行时间间隔请使用SystemClock.elapsedRealti
  3. Android在绘制View之前计算其高度 / 宽度
  4. 小白用网格布局实现简单的计算器 ——Android
  5. Android-TextView用drawableLeft时,改变文字和图片间的距离
  6. android系统修改状态栏背景色以及文字颜色
  7. 我的第一个Android程序,BMI计算器,分享一下源码
  8. Android组件 文字标签(TextView)
  9. Android简单的加法计算器

随机推荐

  1. Android界面设计学习
  2. Android学习笔记4之容器
  3. Android(安卓)关于fragment切换
  4. C#开发Android应用实战——使用Mono for
  5. android json实现网络请求 和普通的http
  6. Android屏幕元素层次结构
  7. Android(安卓)Scroller简单用法
  8. android 5.0新特性
  9. Android之简易天气预报小应用(xml解析练手
  10. duplicate files during packaging of ap