本文实例总结了Android TextView高级显示技巧。分享给大家供大家参考,具体如下:
1. 自定义字体
可以使用setTypeface(Typeface)方法来设置文本框内文本的字体,而Android的 Typeface又使用TTF字体文件来设置字体
所以,我们可以在程序中放入TTF字体文件,在程序中使用Typeface来设置字体:第一步,在assets目录下新建fonts目录,把TTF字体文件放到这里。第二步,程序中调用:
TextViewtv = (TextView)findViewById(R.id.textView); AssetManagermgr=getAssets();//得到AssetManager Typefacetf=Typeface.createFromAsset(mgr, "fonts/mini.TTF");//根据路径得到Typeface tv.setTypeface(tf);//设置字体
效果如下图所示:
2. 显示多种颜色的字
Android支持html格式的字符串,通过调用Html.fromHtml(str)方法可以转换html格式的字符串str。
示例如下:
StringtextStr1 = "<font color="#ffff00">如果有一天,</font><br>"; StringtextStr2 = "<font color="#00ff00">我厌倦了这里,</font><br>"; StringtextStr3 = "<font color="#ff00ff">我会乘着梦,</font><br>"; StringtextStr4 = "<font color="#00ffff">飞向那个属于自己的<br>世界……</font><br>"; tv.setText(Html.fromHtml(textStr1+textStr2+textStr3+textStr4));
运行后效果如下:
3. 字体加粗
在xml布局文件中使用android:text可以将英文设置成粗体,但是不能将中文设置成粗体,将中文设置成粗体的方法是:使用TextPaint的仿“粗体"设置setFakeBoldText为true。示例代码如下:
tv.getPaint().setFakeBoldText(true);
效果如下:
4. 添加阴影
在xml布局文件中使用一系列android:shadowXXX属性可添加设置阴影。具体为:shadowColor设置阴影颜色;shadowDx设置阴影水平偏移量;shadowDy设置阴影垂直偏移量;shadowRadius设置阴影半径。
示例代码:
android:shadowColor="#ffffff" android:shadowDx="15.0" android:shadowDy="5.0" android:shadowRadius="2.5"
显示效果如下:
5. 插入图片
插入图片有两种方法,第一种方法就是用上面说的html格式的字符串,不过转换稍微有些麻烦。需要用到ImageGetter类来对图片的src属性进行转换。示例代码如下:
StringimgStr = "<img src=""+R.drawable.sidai+""/>"; Html.ImageGetterimageGetter = new Html.ImageGetter() { public Drawable getDrawable(Stringarg0) { // TODO Auto-generated methodstub int id =Integer.parseInt(arg0); Drawable draw =getResources().getDrawable(id); draw.setBounds(10, 10, 228,300); return draw; } }; tv.append(Html.fromHtml(imgStr,imageGetter,null));
第二种方法是使用xml布局文件中一系列android:drawableXXX属性来实现插入图片。具体为:drawableBottom是在文本框内文本的底端绘制指定图像;drawableLeft是在文本框内文本的左边绘制指定图像;drawableRight是在文本框内文本的右边绘制指定图像;drawableTop是在文本框内文本的顶端绘制指定图像;drawablePadding设置文本框内文本与图像之间的间距。示例代码:
android:drawableBottom="@drawable/sidai"
插入图片后的显示效果如下:
希望本文所述对大家Android程序设计有所帮助。