Andrtoid TextView的用法

        TextView作为安卓的一个基础空间,如果仅仅是展示文本,那么TextView的作用就太小了,所以它还预定义了一些类似于HTML的标签,通过这些标签可以使TextView控件显示不同的颜色、大小、字体、图片、链接等

1、载入html信息、显示链接

       textView01 = (TextView)findViewById(R.id.textView01);
        textView02 = (TextView)findViewById(R.id.textView02);
        //添加一段html标志
        String html = "<font color = 'red'>I Love Android</font><br>";
        html += "<font color = '#0000ff'><big><i>I Love Android</i></big></font><br>";
        html += "<big><a href = 'http://www.baidu.com'>百度</a></big>";
        CharSequence charSequence = fromHtml(html);
        textView01.setText(charSequence);
        textView01.setMovementMethod(LinkMovementMethod.getInstance());
        //点击时候产生超链接
        textView01.setMovementMethod(LinkMovementMethod.getInstance());
        String text = "我的URL:http://www.sina.com\n";
        text += "我的email:abcd@163.com\n";
        text += "我的电话:18936044502";
        textView02.setText(text);
        textView02.setMovementMethod(LinkMovementMethod.getInstance());


         textView01载入了html的一段标志,第一段是通过<font color = '颜色'>文字</font>将I Love Android设置为红色;

        第二段是通过<font color = '颜色'><big><i>文字</big></i></font>将I Love Android设置为蓝色,字体比周围的大一号并且设置为斜体.

        第三段使用<a> 标签的 href 属性用于指定超链接目标的 URL,最后使用setMoveMethod(LinkMovementMethod.getInstance())完成超链接功能,效果图如下所示:


2、显示图片

获得Drawable中图片的id号

   public int getResourceId(String name)
    {
        try {
            //使用反射机制实现ID的加载
            Field field = R.drawable.class.getField(name);
            //取得返回资源id的字段
            return Integer.parseInt(field.get(null).toString());
        }catch (Exception e)
        {

        }
        return 0;
    }
载入图片

        textView03 = (TextView)findViewById(R.id.textView03);
        //设置textView的底色与文字颜色
        textView03.setTextColor(Color.BLACK);
        textView03.setBackgroundColor(Color.WHITE);
        textView03.setTextSize(20);
        String html_02 = "图像1<img src = 'smiley'/>图像2<img src = 'smiley_angry'/>";
        html_02 += "图像3<a href = 'http://www.baidu.com'><img src = 'smiley_grin'/></a>";
        CharSequence charSequence1 = Html.fromHtml(html_02, new Html.ImageGetter() {
            @Override
            public Drawable getDrawable(String s) {
                //获得系统资源的信息
                Drawable drawable = getResources().getDrawable(getResourceId(s));
                //处理图片文件,按照50%进行压缩
                drawable.setBounds(0, 0, drawable.getIntrinsicWidth()/10, drawable.getIntrinsicHeight()/10);
                return drawable;
            }
        }, null);
        textView03.setText(charSequence1);
        textView03.setMovementMethod(LinkMovementMethod.getInstance());
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值