TextView-- 测量文字宽度

https://my.oschina.net/lengwei/blog/637380;

http://blog.csdn.net/mare_blue/article/details/51388403;

http://blog.csdn.net/baidu_31093133/article/details/52413893;

--1,Android中调用Paint的measureText()方法取得字符串显示的宽度值:

public static float GetTextWidth(String text, float Size) {
//第一个参数是要计算的字符串,第二个参数是字提大小
2 TextPaint FontPaint = new TextPaint();
3 FontPaint.setTextSize(Size);
4 return FontPaint.measureText(text);
5 }

有时候因为工作需要,我们需要获得android文字中的宽度。

如下:

textView = (TextView) findViewById(R.id.tv_content); 
textView.setTextSize(16);
Log.e(TAG, textView.getPaint().measureText(textView.getText().toString())+"");
textView.setTextSize(20);
Log.e(TAG, textView.getPaint().measureText(textView.getText().toString())+"");

可以发现设置不同字体大小时,宽度也是不一样的,输出结果如下:

与字体大小成正比。

时间: 2024-10-07 15:35:39

TextView-- 测量文字宽度的相关文章

关于 Android 测量文字宽度的方法

2020-02-04 关键字:测量文本长度.测量字符串长度 最近在写 APK 时遇到了需要获取文本宽度的需求.其实就是要自己写一个算法以实现文本超长自动换行的功能. 在实现这一功能时发现了原来在 Android 中测量文本的长度,或者说宽度可以分两种情况: 1.测量绝对文本的长度 2.测量相对文本的长度 首先必须声明这两个概念是笔者自己定义的,因为我实在找不着更贴切的词句去形容它们了. 什么是绝对文本呢? 就是指那些字号.字体.粗细等属性不受在所运行的硬件设备上的 Android 系统的配置所影

Android TextView自动换行文字排字参差不齐的原因及处理

Android TextView自动换行文字排版参差不齐的原因及处理 转自: TextView会自动换行,而且排版文字参差不齐.查了下资料,总结原因如下: 1.半角字符与全角字符混乱所致:这种情况一般就是汉字与数字.英文字母混用 解决方法一: 将textview中的字符全角化.即将所有的数字.字母及标点全部转为全角字符,使它们与汉字同占两个字节,这样就可以避免由于占位导致的排版混乱问题了. 半角转为全角的代码如下,只需调用即可.public static String ToDBC(String

Android TextView 实现文字大小不同和文字颜色不同

效果图如下: 关键代码如下: StringBuffer sb = new StringBuffer(); if(day > 0) { sb.append("<a href=\"1\">"); sb.append(""+day); sb.append("</a>"); sb.append(""+Global.getString(R.string.unit_Day2)); } sb

android获取文字宽度

Paint mTextPaint = new Paint(Paint.ANTI_ALIAS_FLAG); mTextPaint.setColor(Color.WHITE); // Define the string. String displayText = “Hello World!”; // Measure the width of the text string. float textWidth = mTextPaint.measureText(displayText); android获

(九)android中通过selector设置TextView的文字选中和正常时候的颜色

通过selector设置TextView的文字选中和正常时候的颜色的步骤如下所示: 1.在res下面建个文件夹color,color文件夹下面建个tv_text_color_selector.xml,tv_text_color_selector.xml中的代码如下所示: <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.androi

TextView设置文字的颜色

1.今天做项目的时候遇到了一个问题,就是无论我怎么设置textView的文字都不管用呀,半天网上找资料呀,这才解决这个问题呀,其实什么问题只要静下心来就可以好好的实现: 以后是实现的代码: #import "ViewController.h" @interface ViewController () @property (weak, nonatomic) IBOutlet UITextView *textview; @end @implementation ViewController

CAD.NET调整属性块中文字宽度

using System;using Autodesk.AutoCAD.ApplicationServices;using Autodesk.AutoCAD.DatabaseServices;using Autodesk.AutoCAD.EditorInput;using Autodesk.AutoCAD.Geometry;using Autodesk.AutoCAD.Runtime; [assembly: CommandClass(typeof(AttributeWidthFactor.MyC

android textView 替文字添加下划线 删除线

android textView 为文字添加下划线 删除线android textview 添加下划线 中划线 删除线tv=(TextView)findViewById(R.id.tvId);tv.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG); //删除线//Paint.UNDERLINE_TEXT_FLAG 下划线 XAMARIN: TextView text = FindViewById<TextView>(Resource.Id.xxx

NGUI UILabel文字宽度和 UITweener

做个记录 方便别人和自己以后查找. NGUI UILabel   文字宽度 高度 mLabel.GetComponent<UILabel>().getLabWidth()   mLabel.GetComponent<UILabel>().getLabHeight(); NGUI UITweener 参考 :http://dsqiu.iteye.com/blog/1974528 缓动函数:http://easings.net/zh-cn

解决android自带textview右侧文字不能对齐的问题

1 package com.sixin.view; 2 3 import android.content.Context; 4 import android.graphics.Canvas; 5 import android.text.Layout; 6 import android.text.StaticLayout; 7 import android.text.TextPaint; 8 import android.util.AttributeSet; 9 import android.wi