android 之 TextView内容不完全显示,省略号功能~~~
2014-04-29 14:36
393 查看
在Android TextView中有个内容过长加省略号的属性,即ellipsize,用法如下:
在xml中: android:ellipsize="end" 省略号在结尾 android:ellipsize="start" 省略号在开头 android:ellipsize="middle" 省略号在中间 android:ellipsize="marquee" 跑马灯 最好加一个TextView显示行数的约束,例如:
android:singleline="true"或者android:lines="2"
在java文件中: tv.setEllipsize(TextUtils.TruncateAt.valueOf("END")); tv.setEllipsize(TextUtils.TruncateAt.valueOf("START")); tv.setEllipsize(TextUtils.TruncateAt.valueOf("MIDDLE")); tv.setEllipsize(TextUtils.TruncateAt.valueOf("MARQUEE"));
最好加一个TextView显示行数的约束,例如:tv.setSingleLine(true);
不仅对于textview有此属性,对于editext也有,不过它不支持marquee。
文字展开和收缩public class DemoActivity extends BaseActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); // 在xml文件中设置了android:singleline="true" final TextView tv = (TextView)findViewById(R.id.task_2_title); //tv.setMovementMethod(ScrollingMovementMethod.getInstance()); tv.setOnClickListener(new OnClickListener() { Boolean flag = true; @Override public void onClick(View v) { Log.i("tv.getLineCount()",tv.getHeight()+""); if(flag){ flag = false; tv.setEllipsize(null); // 展开 //tv.setSingleLine(flag); }else{ flag = true; tv.setEllipsize(TextUtils.TruncateAt.END); // 收缩 //tv.setSingleLine(flag); } } }); }}其实,只是把样式清空而已。就能完全展开了。有人可能要说,万一我想初始几行呢?放心,一样可以。上代码:在xml文件中设置了如下属性:android:lines="4" //我初始化的4行 Activity那边代码一样,只改一点 if(flag){ flag = false; tv.setEllipsize(null); // 展开 tv.setSingleLine(flag); }else{ flag = true; tv.setEllipsize(TextUtils.TruncateAt.END); // 收缩 } 设置setSingleLine的目的是为了取消lines==“4”这个固定值。
相关文章推荐
- Android中SlidingDrawer介绍
- android抓包 (adb)
- Androidpn学习笔记-客户端代码分析
- 如何手动添加Android Dependencies包
- Android 开发环境搭建教程
- Android中获取系统内存信息以及进程信息-----ActivityManager的使用
- 安卓模拟器Android SDK Manager 无法获取SDK列表的解决办法
- Ubuntu下搭建Android开发环境
- Android开发之旅:环境搭建及HelloWorld
- Android优秀开源项目(转过来的)
- Android的px、dip、sp的区别
- android AsyncTask介绍
- android安全
- Android读取assests目录下文件
- htk 搭建语音命令识别工具包
- 4种必须知道的Android屏幕自适应解决方案
- Android启动Activity流程中的Token分析
- Android-自定义图像资源的使用(2)
- Android中使用Bitmap会出现OutOfMemory的原因(转)
- android TouchEvent