一、文字显示行数设置


1. 仅显示一行文字
android:singleLine="true"

setTransformationMethod(TransformationMethod)

2. 设置最多显示几行文字

android:maxLines="3"

TextView.setMaxLines(3);

3. 设置文字最大显示行数后,可是文字可能显示不全。能够设置省略符号。表示还有内容还未显示
android:ellipsize="end"          
end - 省略号在结尾。最经常使用方式
start - 省略号在开头   
middle - 省略号在中间  
marquee -  跑马灯显示,总是运行文字滚动动画。影响性能
4. 不显示padding

android:includeFontPadding="false"


5. 行间距

android:lineSpacingExtra=""


二、文字显示长度设置

1. 设置最大显示长度。单位是px
android:maxWidth="" / TextView.setMaxWidth(int)

左中右三个TextView 使用 RelativeLayout 布局, 中间的文字假设会改变长度的话,不会自己主动调整,导致右側文字还是靠右

使用maxWidth能够解决以上问题





2. 最多显示字符个数
android:maxLength="" / TextView.setFilters(InputFilter)
不会区分中文还是英文。比如设置3,能够显示3个汉字,可是也仅能显示3个英文单字。


3. 动态改动文字大小
须要注意。不能直接使用TextView.setSize(pxValue);
setTextSize (TypedValue.COMPLEX_UNIT_PX, pxValue);

文字大小类型详见TypedValue文档


三、TextView 设置不相同式文本


1. 文字占位符

有些时候一段字符大部分都是固定的。仅中间一两位是变动的,并且想在string.xml中进行声明文本部分。比如:“2015年03月14日”

在res/values/string.xml中

<resources>  

    <string name="date">2015年03月%1$d日</string>  

</resources> 



textView.setText(getResoure.getString(R.string.date, 14));

$d 是占位符,很多其它信息详见文档
Formatter

http://developer.android.com/reference/java/util/Formatter.html



2. 一行文字多种颜色
<resources>  

    <string name="love_world">&lt;font color=\"#aaaaaa\"&gt;%1$s文字部分&lt;/font&gt;</string>  

</resources> 

使用时须要
String string = getResources().getString(R.string.love_world, nameStr);

TextView.setText(Html.fromHtml(string));


3. 点击文字改变颜色
textView.setTextColor( getResources().getColorStateList(R.color.selector) );


四、 android drawTextTextView注意


忽略了baseLine 到 Bottom的距离

五、设置文字使用什么单位
文字大小使用dip。由于即使屏幕密度同样的不同手机sp转换为px的值不一致



Android TextView 常见问题与使用总结的更多相关文章

  1. Android TextView 添加下划线的几种方式

    总结起来大概有5种做法:  1. 将要处理的文字写到一个资源文件,如string.xml(使用html用法格式化)   2. 当文字中出现URL.E-mail.电话号码等的时候,可以将TextView ...

  2. Android WebView常见问题及解决方案汇总

    Android WebView常见问题解决方案汇总: 就目前而言,如何应对版本的频繁更新呢,又如何灵活多变地展示我们的界面呢,这又涉及到了web app与native app之间孰优孰劣的争论. 于是 ...

  3. Android TextView图文混合编排

    Android TextView图文混合编排 实现技术细节不难,两个要点:1.html代码的混合编写.2,重写ImageGetter.例如:布局: <?xml version="1.0 ...

  4. Android:TextView 自动滚动(跑马灯) (转)

    Android:TextView 自动滚动(跑马灯)       TextView实现文字滚动需要以下几个要点: 1.文字长度长于可显示范围:android:singleLine="true ...

  5. android Textview动态设置大小

    import android.app.Activity; //import com.travelzen.tdx.BaseActivity; //import com.travelzen.tdx.uti ...

  6. Android TextView内容过长加省略号,点击显示全部内容

    在Android TextView中有个内容过长加省略号的属性,即ellipsize,用法如下: 在xml中:android:ellipsize="end"    省略号在结尾an ...

  7. android TextView多行文本(超过3行)使用ellipsize属性无效问题的解决方法

    这篇文章介绍了android TextView多行文本(超过3行)使用ellipsize属性无效问题的解决方法,有需要的朋友可以参考一下 布局文件中的TextView属性 复制代码代码如下: < ...

  8. Android - TextView Ellipsize属性

    Android - TextView Ellipsize属性 本文地址: http://blog.csdn.net/caroline_wendy android:ellipsize属性: If set ...

  9. Android TextView中有图片有文字混合排列

    Android TextView中有图片有文字混合排列 1.使用html.fromHtml 2.新建ImageGetter 3.使用<img src>标签 demo: 1.设置文字 ((T ...

随机推荐

  1. 5.flask知识点补充

    1.WTForms表单验证基本使用 flask-wtf是一个简化了WTForms操作的一个第三方库,WTForms表单的两个主要的功能jiushi就是验证用户提交数据的合法性以及渲染模板.当然还包括其 ...

  2. JavaScript阻止修改对象的三种方式

    JavaScript中,我们希望别人无法修改我们创建的对象.比如,代码库的作者很可能想锁定核心库的某些部分来保证它们不被意外地修改.ES5中引入了三种锁定修改的级别:防止扩展preventExtens ...

  3. MySQL 多列索引优化小记

    MySQL 5.6.30 问题背景 由于爬虫抓取的数据不断增多,这两天在不断对数据库以及查询语句进行优化,其中一个表结构如下: CREATE TABLE `newspaper_article` ( ` ...

  4. Selenium2+python自动化25-js处理日历控件(修改readonly属性)【转载】

    前言 日历控件是web网站上经常会遇到的一个场景,有些输入框是可以直接输入日期的,有些不能,以我们经常抢票的12306网站为例,详细讲解如何解决日历控件为readonly属性的问题. 基本思路:先用j ...

  5. 使用Bind服务配置DNS服务器

    bind是什么 bind是DNS服务器软件 ,他的服务名称是named 功能区分: 正向解析:根据主机名查找对应的IP地址 反向解析:根据IP地址查找对应的主机名(域名) 工作形式上区分: 主服务器: ...

  6. linux下命令行文件路径隐藏

    https://askubuntu.com/questions/16728/hide-current-working-directory-in-terminal 在~.,bashrc里添加 expor ...

  7. redis使用管道pipeline提升批量操作性能(php演示)

    Redis是一个TCP服务器,支持请求/响应协议. 在Redis中,请求通过以下步骤完成: 客户端向服务器发送查询,并从套接字读取,通常以阻塞的方式,用于服务器响应. 服务器处理命令并将响应发送回客户 ...

  8. 训练指南 UVA - 11383(KM算法的应用 lx+ly >=w(x,y))

    layout: post title: 训练指南 UVA - 11383(KM算法的应用 lx+ly >=w(x,y)) author: "luowentaoaa" cata ...

  9. MySQL查询时区分大小写(转)

    说明:在MySQL查询时要区分大小写会涉及到两个概念character set和collation,这两个概念在表设计时或者在查询时都可以指定的,详细参考:http://www.cnblogs.com ...

  10. Delphi 通过SQLite3, SQLiteTable3 操作数据库

    var sql, sFile:string; db:TSQLiteDatabase;begin try sFile := G_AppPath + CH_IPC712Db; //if FileExist ...