Android控件之文本控件---TextView
SpannableString---可更改一串字符串每个字符有不同的效果(字体大小,颜色,下划线。。。。)
一定宽度下显示一定数量的字符,然后显示省略号
android:singleLine="true" ---表示单行显示为真
android:ellipsize="end" -----表示省略号显示的位置为结束位置,(start/end/middle/none/marquee<跑马灯效果,下面会提到>)
android:maxEms="5" ------最大显示的字符数
一定宽度下利用跑马灯效果将文本信息全部显示出来
android:singleLine="true"
android:maxEms="9"
ellipsize="marquee" ----省略符为跑马灯效果
android:marqueeRepeateLimit="marquee_forever"---跑马灯重复次数为永久,也可以是数字次数
android:focusable="true"----显示为真,
android:focusableInTouchMode="true" ---自动滚动显示文字
加监听:
addTextChangedListener
//以9.9元为例,将前面数字改为绿色,20号,“元” 改为15号
SpannableString
TextView text = (TextView) findViewById(...);
String objText =text.getText().toString();
SpannableString span = new SpannableString(objText);//objText 要更改的字符串
AbsoluteSizeSpan textSize = new AbsoluteSizeSpan(20,true);//20代表字号大小,true表示单位为dip,否则单位是像素
span.setSpan(textSize,0,objText.length()-1,Spanned.SAPAN_EXCLUSIVE_EXCLUSIVE);
span.setSpan(new AbsoluteSizeSpan(15,true),objText.length()-1,objText.length(),Spanned.SAPAN_EXCLUSIVE_EXCLUSIVE);
span.setSpan(new ForegroundColorSpan(getResource().getColor(android.R.color.holo_green_light)),0,objText.length()-1,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //设置颜色
text.setText(span);//将文本信息设成已更改好的SpannableString 对象。
/*
扩充: new RelativeSizeSpan(0.5f); //用相对大小,像素为单位,为默认字体的0.5倍,
new StyleSpan(android.graphics.Typeface.BOLD);//设置字体为粗体
new StrikethroughSpan();//设置中划线
控件名. getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);//直接设置中划线
new UnderlineSpan()//设置下划线
new BackgroundColorSpan(Color.green);//设置背景颜色
*/