TextView使用完全讲解
16lz
2021-12-04
设置文字边缘的图片
android:drawableBottom 在text的下方添加一个Drawable图片android:drawableLeft 在text的左边添加一个Drawable图片android:drawableTop 在text的上方添加一个Drawable图片android:drawableRight 在text的右边添加一个Drawable图片如果要控制图片和Text的距离, 可以用 android:drawablePadding
显示双引号
<TextView style="@style/TextStyle" android:text="message \"quote string 1\" and" android:id="@+id/lblAboutPara3" android:autoLink="web"/> //斜杠转义 \" 就可以了 //诸如“?”、“'”、“\”等符号时,必须使用转义字符(\),如: \? \' \\
文本字数限定
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:ellipsize="end" android:maxEms="11" android:singleLine="true" android:text="设置超出11个长度时显示省略号" android:textSize="14dp" />
延伸:maxEms和maxLength的属性区别
文字下划线
textView.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);
显示不同大小的文字
SpannableStringBuilder spannable = new SpannableStringBuilder(getResources().getString(R.string.release_add_pic_text1));// 用于可变字符串 AbsoluteSizeSpan span_2 = new AbsoluteSizeSpan(30);// 字体大小 AbsoluteSizeSpan span_3 = new AbsoluteSizeSpan(24);// 字体大小 spannable.setSpan(span_2, 0, 4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); spannable.setSpan(span_3, 5, 8, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); spannable.setSpan(span_2, 9, 9, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); tvAddPic.setText(spannable);
设置Textsize的单位
TextView中的getTextSize返回值是以像素(px)为单位的,
而setTextSize()是以sp为单位的.所以如果直接用返回的值来设置会出错,解决办法是用setTextSize()的另外一种形式,可以指定单位:
setTextSize(int unit, int size) TypedValue.COMPLEX_UNIT_PX : Pixels //PXTypedValue.COMPLEX_UNIT_SP : Scaled Pixels //SPTypedValue.COMPLEX_UNIT_DIP : Device Independent Pixels //DP
中文设置成粗体
在xml文件中使用android:textStyle=”bold”
可以将英文设置成粗体,但是不能将中文设置成粗体,将中文设置成粗体的方法是:
TextView tv = (TextView)findViewById(R.id.TextView01); TextPaint tp = tv.getPaint(); tp.setFakeBoldText(true);
图文混排
SpannableString result = new SpannableString(content); Drawable drawable = getResources().getDrawable(id); ImageSpan imageSpan = new ImageSpan(drawable); // 根据字体大小加载图片 if (imageSpan != null) { result.setSpan(imageSpan, 0, content.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); } new TextView(content).setText(result);
效果
更多相关文章
- Android(安卓)Button 样式 圆角
- android:targetSdkVersion引起的问题
- 华为android 10 手机恢复删除的图片,目前只能恢复小图。
- 用PHP编写Android应用程序
- Android横竖屏切换总结
- Android开机LOGO
- Android(安卓)Studio主题设置
- android 横竖屏转换
- Android(安卓)系统(194)---Android实践 -- 设置系统日期时间和时区