zoukankan      html  css  js  c++  java
  • 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:textStyle=”bold”可以将英文设置成粗体,但是不能将中文设置成粗体,将中文设置成粗体的方法是:使用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”
    插入图片后的显示效果如下:


  • 相关阅读:
    HDU2586 How far away?(tarjan的LCA)
    You Raise Me Up
    POJ2891 Strange Way to Express Integers(中国剩余定理)
    POJ2142 The Balance(扩展欧几里得)
    HDU 1166模仿大牛写的线段树
    NetWord Dinic
    HDU 1754 线段树裸题
    hdu1394 Minimum Inversion Number
    hdu2795 Billboard
    【完全版】线段树
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/3988113.html
Copyright © 2011-2022 走看看