`

Android中计算textView长度问题

 
阅读更多

http://zilla.blog.51cto.com/3095640/984775

 

 

1.TextView的宽度由屏幕总宽度- 额外宽度 得到。然后乘以2得到TextView可以显示的内容的宽度。

2.使用工具方法TextUtils.ellipsize方法,将1中计算的长度传入,得到TextView中可以显示的文本的内容。

3.将2中得到的文本set到TextView中。

 

private void measureTextWidth(TextView textView, String txt) {
		if (textLength == 0) {
			float textViewWidth = Variable.availableWidth - (40 + 50 + 15 + 11)* Variable.dip;
			textLength = textViewWidth * 2 - 5 * 11 * Variable.dip;
		}
		Paint paint = textView.getPaint();
		paint.setTextSize(textView.getTextSize());
		String temp = (String) TextUtils.ellipsize(txt, (TextPaint) paint,textLength, TextUtils.TruncateAt.END);
		textView.setText(temp);
	} 

 

分享到:
评论

相关推荐

    Android textView根据长度自动换行-IT计算机-毕业设计.zip

    3. **动态计算宽度**:在某些情况下,我们可能需要在运行时动态计算TextView的宽度。可以使用`getPaint().measureText(String text)`方法来测量文本宽度,然后根据结果调整TextView的宽度。 4. **自定义ViewGroup**...

    安卓Android源码——textView根据长度自动换行.zip

    这个压缩包"安卓Android源码——textView根据长度自动换行.zip"很可能包含了一个示例项目或代码片段,演示了如何在TextView中实现根据文本长度自动换行的功能。 在Android的TextView中,自动换行是默认开启的。当你...

    Android中继承TextView实现文字的跑马灯效果

    TextView是Android UI布局中的一个基本组件,用于显示文本。它支持多种样式,如字体大小、颜色、对齐方式等。然而,原生的TextView并不直接提供跑马灯效果,所以我们需要自己扩展这个功能。 要创建自定义的跑马灯...

    android 可折叠TextView 自定义控件

    `android 可折叠TextView` 自定义控件就是为了解决这个问题而设计的。这种控件允许用户点击后展开或收起文本,从而节省屏幕空间,同时保持信息的完整性和易读性。 自定义的可折叠TextView通常是通过继承Android原生...

    android textview 文字排版 换行

    在Android开发中,`TextView`是用于展示文本的最基础且重要的组件。它不仅可以显示单行文本,还能处理复杂的文字排版,包括自动换行。本文将深入探讨`TextView`在处理文字排版和换行方面的知识,以及如何优化其性能...

    Android-Android中可"折叠""打开"或者"全文""收起"的TextView

    - **计算文本长度**:使用`getText().length()`获取TextView当前显示的字符数。 - **设置最大显示字符数**:通过`setMaxLines()`限制TextView的最大行数,或者`setEllipsize()`在达到最大显示长度时添加省略号。 - *...

    textView根据长度在屏幕中自动换行

    本篇将详细讲解如何实现`TextView`根据长度在屏幕中自动换行的功能,并探讨如何控制每行显示的字符数量。 首先,`TextView`默认情况下就会根据文本内容和可用空间自动换行,无需额外设置。但如果我们想要自定义换行...

    android中自动调整宽度的TextView

    在Android开发中,TextView是用于显示文本的基本组件,它在用户界面中扮演着重要的角色。在某些场景下,我们可能需要一个可以根据文本内容自动调整宽度的TextView,以便更有效地利用屏幕空间并保持良好的布局视觉...

    Android textview 自定义布局

    在Android开发中,TextView是用于显示文本的基本组件。然而,有时候我们可能需要对TextView的布局进行自定义,使其能够满足特定的设计需求。本教程将详细讲解如何实现一个自定义的TextView布局,使得文本每四行平均...

    文本标签随着文本的长度移动显示的Textview

    在Android开发中,`TextView` 是一个非常基础且重要的组件,用于显示单行或多行文本。当处理具有标签和动态内容的`TextView`时,我们可能会遇到一些特定的需求,如文本长度变化时标签的位置调整。本文将深入探讨`...

    安卓textview左右对齐,自适配间距

    首先,计算出所有行的最长文本长度,然后为每个TextView插入合适的tabstop,使得文本在换行后能够正确对齐。 2. **使用Html.fromHtml()** Android支持使用HTML格式的字符串来设置TextView的内容。可以利用HTML的`...

    Android流式TextView,类似文字标签。

    在Android开发中,流式TextView(Flowing TextView)是一种特殊类型的文本视图,它能够适应文本的长度,自适应地换行,使文本在屏幕中按照特定的方式流动展示,类似于常见的文字标签效果。这种效果常见于新闻应用、...

    Android高级应用源码-textView根据长度自动换行.zip

    通过研究"Android高级应用源码-textView根据长度自动换行.zip"中的源码,我们可以学习到如何在实际项目中有效地利用上述知识点,优化TextView的表现,提高用户体验。理解并实践这些概念将有助于你成为更专业的...

    CountAnimationTextView,一个小小的android库使得计算textview动画变得非常容易。.zip

    CountAnimationTextView是一个专门为Android开发者设计的开源库,它简化了在TextView中实现文字计数动画的过程。这个库的出现,让开发者无需编写复杂的代码就能在TextView中创建出吸引人的动态显示效果,比如数字...

    适应多行长文本的Android TextView

    在Android开发中,`TextView`是用于展示文本的常用组件,但默认情况下,它并不支持自动适配多行显示。为了使`TextView`能够适应不同长度的文本,我们需要进行一些定制化处理,尤其是在处理长文本时,可能需要考虑...

    textView根据长度自动换行.zip

    总之,"textView根据长度自动换行"这个主题涵盖了Android界面设计的基础知识,涉及到TextView的属性配置、布局计算、动态更新以及多语言处理等多个方面。通过源码学习,开发者不仅可以理解TextView的工作机制,还能...

    Textview设置超出11个长度时显示省略号

    在Android开发中,`TextView` 是一个非常常用的控件,用于显示单行或多行文本。在某些场景下,我们可能希望限制`TextView`显示的文本长度,当文本超过设定长度时,用省略号(...)来表示内容被截断。这种效果在UI...

    android自定义横向跑马灯TextView(两种,即使一个字符也能跑马灯)

    在`onDraw()`中,我们可以计算出当前需要绘制的文本部分,并在每次绘制后更新文本的起始位置,使其看起来像是在不断滚动。当文本滚动到末尾时,需要重置起点,形成循环效果。 ```java public class ...

    Android自定义竖排TextView实现实例

    在Android开发中,有时我们需要创建一些特殊的视图组件来满足特定的设计需求。在这个实例中,我们探讨的是如何自定义一个竖排TextView,使得文本字符能够垂直方向上排列,而不是默认的水平排列。这对于构建类似联系...

    Android实现可点击展开的TextView

    然后,我们需要计算 TextView 实际显示的文本长度和应该显示文本的长度,判断 TextView 是否需要展开或收缩。 ```java int paddingLeft = tv.getPaddingLeft(); int paddingRight = tv.getPaddingRight(); TextPaint...

Global site tag (gtag.js) - Google Analytics