Android判断TextView是否超出加省略号
我们都知道通过指定android:ellipsize="end" android:singleLine="true" 可以让TextView自动截断超出部分并且添加省略号。但是如何判断一个TextView是否被截断了呢?
这个问题在StackOverflow上有人讨论过,不过遗憾的是我测试出Layout layout = mytextview.getLayout();一直是null。后来我发现了更好的办法:
首先自定义一个TextView的子类,声明两个个方法:
1
2
3
4
5
6
7
8
9
10
11
|
private int getAvailableWidth() { return getWidth() - getPaddingLeft() - getPaddingRight(); } private boolean isOverFlowed() { Paint paint = getPaint(); float width = paint.measureText(getText().toString()); if (width > getAvailableWidth()) return true ; return false ; } |
然后在onTextChanged里调用isOverFlowed就行了。
http://www.hankcs.com/program/mobiledev/android-textview-determine-whether-excess-of-ellipsis.html
Android判断TextView是否超出加省略号的更多相关文章
- react实现多行文本超出加省略号
http://www.css88.com/archives/5206 overflow : hidden; text-overflow: ellipsis; display: -webkit-box; ...
- Android判断网路是否畅通加权限
权限 <uses-permission android:name="android.permission.INTERNET"/> <uses-permission ...
- 【Android】 textview 中超出屏幕宽度的字符 省略号显示
当利用textview显示内容时,显示内容过多可能会折行或显示不全,那样效果很不好. 实现如下: <TextView android:layout_width="fill_parent ...
- html文本超出加省略号
如果实现单行文本的溢出显示省略号同学们应该都知道用text-overflow:ellipsis属性来,当然还需要加宽度width属来兼容部分浏览. 实现方法: overflow: hidden; te ...
- 微信小程序文字超出加省略号
我查资料的时候搜到这个博客 http://blog.csdn.net/u010168409/article/details/54429678 view{ overflow:hidden; //超出一行 ...
- Android TextView内容过长加省略号,点击显示全部内容
在Android TextView中有个内容过长加省略号的属性,即ellipsize,用法如下: 在xml中:android:ellipsize="end" 省略号在结尾an ...
- Android中TextView内容过长加省略号
textview中有个内容过长加省略号的属性,即ellipsize,用法如下: 在xml中 Android:ellipsize = "end" 省略号在结尾 and ...
- Android TextView内容过长加省略号
在Android TextView中有个内容过长加省略号的属性,即ellipsize,用法如下: 在xml中: android:ellipsize = "end" //省略号在结尾 ...
- TextView过长显示省略号, TextView文字中间加横线
1.TextView显示的内容过长时自动显示省略号: 省略号的位置:android:ellipsize="end" 省略号在结尾android:ellipsize=" ...
随机推荐
- oracle 导出表结构信息
直接贴sql: select cols.table_name 表名, cols.column_name 列名, cols.data_type 字段类型, cols.data_length 长度, co ...
- java中String初始化的两种方式
转自:http://www.diybl.com/course/3_program/java/javajs/2007104/75886.html 字符串可能是任何程序语言中都会出现的对象,j ...
- 实时监控linux
https://www.cnblogs.com/tinywan/p/6826125.html
- bzoj 3533 [Sdoi2014]向量集 线段树+凸包+三分(+动态开数组) 好题
题目大意 维护一个向量集合,在线支持以下操作: "A x y (|x|,|y| < =10^8)":加入向量(x,y); "Q x y l r (|x|,|y| & ...
- Codevs 3287 货车运输 == 洛谷P1967
3287 货车运输 2013年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description A 国有 n 座城市,编 ...
- 洛谷 P 1387 最大正方形
题目描述 在一个n*m的只包含0和1的矩阵里找出一个不包含0的最大正方形,输出边长. 输入输出格式 输入格式: 输入文件第一行为两个整数n,m(1<=n,m<=100),接下来n行,每行m ...
- 如何在requirejs下引用bootstrap
原本以为只要require过来就能用 require(['jquery','underscore','bootstrap','cache'],function($,U,B,C){ 但发现会报错,类似未 ...
- JS函数调用原理($.ajax原理)
参考四种函数调用:http://www.cnblogs.com/qlqwjy/p/7660013.html http://www.cnblogs.com/qlqwjy/p/7660375.html 1 ...
- 转 Python爬虫实战一之爬取糗事百科段子
静觅 » Python爬虫实战一之爬取糗事百科段子 首先,糗事百科大家都听说过吧?糗友们发的搞笑的段子一抓一大把,这次我们尝试一下用爬虫把他们抓取下来. 友情提示 糗事百科在前一段时间进行了改版,导致 ...
- VMware虚拟机直连物理网络的两种方式
VMware虚拟机直连物理网络的两种方式 使用VMware构建虚拟机,通常虚拟机都使用NAT模式.这时,虚拟机有独立的网段.使用NAT模式,虚拟机之间数据都通过虚拟网络传输,不会影响实体机所在的实 ...