TextView高级显示——显示不同颜色的字&水平滚动

来源:互联网 发布:linux root密码忘记 编辑:程序博客网 时间:2024/06/05 15:41

程序里添加一条显示“张三; 手机号码:13612345678; 邮箱:12345678@123.com”

第一步:简单的TextView显示。
感觉效果太普通了,于是做了下面第二步修改。
第二步:姓名、手机号和邮箱为蓝色,标签为白色(手机背景是黑色的),需要间隔显示颜色。
    String strShow = "张三; 手机号码:13612345678; 邮箱:12345678@123.com";      SpannableStringBuilder style=new SpannableStringBuilder(strShow);       style.setSpan(new ForegroundColorSpan(Color.BLUE), 0, 3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);       style.setSpan(new ForegroundColorSpan(Color.WHITE), 4, 9, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);       style.setSpan(new ForegroundColorSpan(Color.BLUE), 10, 21, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);     style.setSpan(new ForegroundColorSpan(Color.WHITE), 22, 24, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);    style.setSpan(new ForegroundColorSpan(Color.BLUE), 25, 42, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);    tvShow.setText(style);    tvShow.setTextSize(16);    tvShow.setFocusable(true);
显示效果如下:

 
第三步:单行滚动显示

layout文件设置如下:

    <TextView         android:id="@+id/tvShow"        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:layout_marginTop="60dp"        android:singleLine="true"//单行显示        android:ellipsize="marquee"//滚动        android:marqueeRepeatLimit="marquee_forever"//设置滚动时间为永远 也可以为具体的int 来设置滚动次数        android:focusable="true"        />
原创粉丝点击