首先来看一个控件的例子:

android studio textview 可填写 安卓开发textview_控件

手机上类似这种场景你一定已经见过非常多次了,但有没有考虑过它是如何实现的?



或许你会觉得这是一个略微复杂的自己定义的View,但,没错,这实际上仅仅是一个原生的TextView而已。



TextView是一个简单而奇妙的Widget,你能够利用它以不同风格不同格式来展现文字。





举两个简单的样例:



1.在TextView中加入一个超链接



   事实上非常easy,我们能够将html写入到TextView中去:



首先先在res/values中的string.xml中加入一个<string />标签:

<string name= "text1" ><![CDATA[ Visit <a href=\"\">Vector_Yi\'s Blog</a> ]]></string>



然后仅仅需在Activity文件里加入下面代码就可以:



final TextView textView1 = (TextView ) findViewById( R. id. my_text_view_html);
    textView1 .setText (Html . fromHtml( getString( R. string. text1)));
    textView1 .setMovementMethod (LinkMovementMethod . getInstance());



2.为TextView中的指定部分文字设置背景与前景色



相同在res/value中的string.xml中加入一个string:



<string name= "text2" >Hello World, HomeActivity!</string>



接下来,利用SpannableString类就可以:



final Spannable text2 = new SpannableString(
        getString (R .string .text2 ));
    text2 .setSpan ( new BackgroundColorSpan( Color. RED), 1 , 4, 0 );//从index为1起,到index为4止,设置背景色为RED
    text2 .setSpan ( new ForegroundColorSpan( Color. BLUE), 6 , 9, 0 );



下面是显示效果:



android studio textview 可填写 安卓开发textview_控件_02



注意:TextView并不支持全部的Html标签= =,可是你能够尝试一下不同的标签是否可行。










转载于:


首先来看一个控件的例子:

(原文地址:)

android studio textview 可填写 安卓开发textview_控件

手机上类似这种场景你一定已经见过非常多次了,但有没有考虑过它是如何实现的?



或许你会觉得这是一个略微复杂的自己定义的View,但,没错,这实际上仅仅是一个原生的TextView而已。



TextView是一个简单而奇妙的Widget,你能够利用它以不同风格不同格式来展现文字。





举两个简单的样例:



1.在TextView中加入一个超链接



   事实上非常easy,我们能够将html写入到TextView中去:



首先先在res/values中的string.xml中加入一个<string />标签:

<string name= "text1" ><![CDATA[ Visit <a href=\"\">Vector_Yi\'s Blog</a> ]]></string>



然后仅仅需在Activity文件里加入下面代码就可以:



final TextView textView1 = (TextView ) findViewById( R. id. my_text_view_html);
    textView1 .setText (Html . fromHtml( getString( R. string. text1)));
    textView1 .setMovementMethod (LinkMovementMethod . getInstance());



2.为TextView中的指定部分文字设置背景与前景色



相同在res/value中的string.xml中加入一个string:



<string name= "text2" >Hello World, HomeActivity!</string>



接下来,利用SpannableString类就可以:



final Spannable text2 = new SpannableString(
        getString (R .string .text2 ));
    text2 .setSpan ( new BackgroundColorSpan( Color. RED), 1 , 4, 0 );//从index为1起,到index为4止,设置背景色为RED
    text2 .setSpan ( new ForegroundColorSpan( Color. BLUE), 6 , 9, 0 );



下面是显示效果:



android studio textview 可填写 安卓开发textview_控件_02



注意:TextView并不支持全部的Html标签= =,可是你能够尝试一下不同的标签是否可行。