在winform或webform中,均有Control类,虽然不在同一个程序集中,但都代表“控件”的意思。在Monodroid中,表示控件的类是Android.Views.View。开发过winform或webform的朋友都知道,要在界面上显示文字,只要使用Label控件即可。在Android中,则要使用TextView。
要设置一个TextView的文本有两种方法,一是使用资源文件来定义一个字符串常数,然后在布局文件中进行引用。二是直接在后台程序中使用C#代码进行赋值。
我们先来试试第一种方法。在Resources\Values\Strings.xml文件中增加一个项,如下所示:
然后在布局文件Main.axml中,增加一个TextView,文本引用这个新增加的字符串常量,如下所示:
Activity1.cs中只要把Main.axml设置到ContentView即可:
运行之后,就可以看到程序中出现了一行字符串,与我们在Strings.xml中设置的一样:
使用代码来设置TextView的文本就更简单了,首先在Activity的OnCreate方法里使用FindViewById方法来通过TextView的id从布局文件中找到这个TextView,然后对其Text进行赋值即可:
这里提示一下,TextView不支持HTML标签的输出,所以即便写成这样:tv.Text = "<a href=\"http://blog.csdn.net/ojlovecd\" >区健的博客 </a>"; 实际输出时也不会变成超链接,但若在TextView里加上了android:autoLink="all",或者在程序中使用tv.AutoLinkMask=1,那么文本中若有网址(http://),是可以被转换成超链接的:
下面我们试试更改TextView的字体颜色和背景色。在第三篇文章里我们在最后就已经试过把程序的背景色给改成了白色,是通过在Values文件下增加了一个color.xml来设置颜色常量来达到的。但实际设计中最常用的方法是使用程序控制TextView或其它对象的背景颜色。接下来我们在Layout中预先设计好两个TextView对象,并在Activity的OnCreate方法中通过两种方式更改TextView的文字颜色及背景色。
那么定义在Strings.xml中的字符串常量我们要是在程序里要使用的话该怎么获取呢?可以使用Activity中的GetString方法:
tv1.Text = this.GetString(Resource.String.myText)。注意一点的是,如果string.xml中的字符串常数有单引号',双引号"和斜杠\等特殊字符时,记得使用转义字符(\):<string name="myText">这是?通过\'Strings.xml\"设置的文\\本</string>
Android可以设置为随着窗口大小调整缩放比例,但即便如此,开发人员还是必须知道手机屏幕的边界,以免造成布局变形问题。获取手机分辨率的方法很简单,关键是DisplayMetrics类的应用。
老是要一个个指定文字的大小、颜色是不是太麻烦了点?有没有类似CSS那样的方法来指定这些样式呢?事实上是有的,在MonoDroid中,也可以通过样式(Style)的方式,来更改Layout中任何对象的外观。
我们首先在Values文件下增加一个style.xml作为我们的样式文件,然后往里面增加两种样式作为例子:
然后在布局文件中指定Style属性,使其应用style.xml里事先定义好的样式。如果vs在style下面有波浪提示你未声明“style”特性,不要管它,直接生成。
分享到:
相关推荐
主要介绍了Android使用selector修改TextView中字体颜色和背景色的方法,实例分析了selector方法的相关使用技巧,需要的朋友可以参考下
实现textview字体颜色的渐变显示
本文实例讲述了Android编程中TextView字体属性设置方法(大小、字体、下划线、背景色)。分享给大家供大家参考,具体如下: import android.content.Context; import android.graphics.Color; import android.text....
Android 设置textview某段字体颜色或者背景
NULL 博文链接:https://aichixihongshi.iteye.com/blog/1206525
部分textview字体颜色不同ColorPhrase-master.zip
Android 点击TextView 改变背景色
代码动态改变某些textview文本颜色及其大小的方式.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
Android 一个TextView中设置不同字体大小和颜色
安卓Android源码——textView.rar
给TextView设置字体样式的三种方法
android实现TextView文字部分渐变色;LinearGradientFontSpan SpannableString
自定义textview字体闪烁效果,代码简单易懂
安卓Android源码——textView1.rar
自定义TextView带边框,可以动态更边框颜色以及字体颜色,可设置边框圆角
Android中带圆角以及不同背景颜色的TextView,如果使用xml实现的话针对不同的颜色需要写一个xml文件,这样太繁琐了,所以就自己写了一个控件,只要设置一下属性就可以达到想要的目的
本人封装的一个工具类,可对textview中的部分字体修改颜色和大小。希望对大家有所帮助! 有四个构造方法,可以改变字体大小和颜色或者默认TextView本身的颜色大小都可以!! 代码中都写又详细的注释!
GridView中的TextView选中背景变色