Android多行TextView,检查文本是否合适,或检查是否已完成TextView

我有一个包含多行TextView的 Android应用程序布局.当屏幕处于纵向方向时,TextView可以在横向模式下运行时显示不同长度的文本.此外,当在小屏幕上运行时,TextView可以在较大屏幕上运行时显示不同长度的文本.

有什么办法可以检查文本是否适合或将被截断?或者有什么办法可以检查TextView是否满了?

问题是TextView可能包含不同数量的行,这取决于它是横向,纵向,小屏幕,大屏幕等.

感谢您的建议,

最好的祝福,

詹姆士

解决方法

这些答案对我来说不是很好.这是我最后做的
Paint measurePaint = new Paint(myTextView.getPaint());
float pWidth = measurePaint.measureText("This is my big long line of text. Will it fit in here?");
float labelWidth = myTextView.getWidth();
int maxLines = myTextView.getMaxLines();

while (labelWidth > 0 && pWidth/maxLines > labelWidth-20) {
    float textSize = measurePaint.getTextSize();
    measurePaint.setTextSize(textSize-1);
    pWidth = measurePaint.measureText("This is my big long line of text. Will it fit in here?");
    if (textSize < TypedValue.applyDimension(
            TypedValue.COMPLEX_UNIT_SP,7,getContext().getResources().getDisplayMetrics())) break;
}

myTextView.setTextSize(TypedValue.COMPLEX_UNIT_PX,measurePaint.getTextSize());

我不是说这将适用于每种情况,因为我在这里切割角落,但一般的想法是用textview的颜色来测量文本,并保持缩小,直到它适合文本视图.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...