`
tansitongba
  • 浏览: 503666 次
文章分类
社区版块
存档分类
最新评论

MonoDroid学习笔记(五)—— 更改TextView字体颜色和背景色及Style样式的定义

 
阅读更多

在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动态设置TextView字体颜色

    在Android开发中,动态设置TextView字体颜色是一项常见的需求。开发者可能需要根据用户的操作、应用程序的状态或者数据的变化来改变TextView的文字颜色。这篇博文“android动态设置TextView字体颜色”为我们揭示了...

    Android使用selector修改TextView中字体颜色和背景色的方法

    首先,我们来创建两个XML文件,分别用于定义背景色和字体颜色的Selector。这两个文件将放在项目的res/color目录下。 1. `tbackground.xml` - 修改背景颜色的Selector ```xml &lt;!-- 默认状态下的背景颜色 --&gt; &lt;!...

    Android 点击TextView 改变背景色

    在Android开发中,改变TextView的背景色是常见的交互设计需求,尤其在用户界面设计中,通过点击事件来改变TextView的状态可以提升用户体验。本教程将详细讲解如何实现Android中点击TextView时改变其背景颜色。 首先...

    安卓textView相关-代码动态改变某些textview文本颜色及其大小的方式.rar

    本资源"安卓textView相关-代码动态改变某些textview文本颜色及其大小的方式.rar"包含了关于如何在运行时动态修改TextView文本颜色和大小的方法。下面将详细解释这些知识点。 1. 动态改变TextView文本颜色: 在...

    给TextView设置字体样式的三种方法

    在Android开发中,TextView是用于显示文本的基本...通过以上三种方式,开发者可以根据需求灵活地调整TextView的字体样式,提升应用的视觉效果和用户体验。理解并熟练运用这些方法,有助于打造更高质量的Android应用。

    textview字体颜色渐变显示

    总之,实现TextView字体颜色渐变显示的方法多样,可以根据项目需求选择适合的方式。无论是通过原生API还是第三方库,都可以达到预期的效果。在实际开发中,注意代码的可读性和性能优化,以提供更好的用户体验。

    Android编程中TextView字体属性设置方法(大小、字体、下划线、背景色)

    本文实例讲述了Android编程中TextView字体属性设置方法(大小、字体、下划线、背景色)。分享给大家供大家参考,具体如下: import android.content.Context; import android.graphics.Color; import android.text....

    Android 设置textview某段字体颜色或者背景

    通过以上的方式,我们可以实现对TextView中特定文字颜色和背景色的动态控制,从而提高UI的交互性和视觉效果。在实际开发中,还需要注意性能优化,避免在大量数据或频繁操作时过度使用Spannable,以免影响应用性能。

    设置TextView部分文字的颜色和背景(高亮显示)

    接着,我们定义了高亮文字的颜色和背景色,并创建了对应的`ForegroundColorSpan`和`BackgroundColorSpan`对象。最后,我们使用`setSpan`方法将这些样式应用到TextView的文本上。 除了使用`SpannableString`和`...

    部分textview字体颜色不同ColorPhrase-master.zip

    在Android开发中,`TextView` 是一个非常...以上是关于“部分textview字体颜色不同ColorPhrase-master.zip”项目的主要知识点,通过这些技术,开发者可以在`TextView`中轻松实现多颜色文本展示,提升应用的用户体验。

    Android 一个TextView中设置不同字体大小和颜色

    当我们需要在一个TextView中展示不同字体大小和颜色的文本时,可以借助SpannableString和相关Span类来实现。下面将详细解释如何实现这个功能。 首先,了解SpannableString。SpannableString是CharSequence的一个...

    Mono for Android和MonoDroid学习笔记全套

    这套学习笔记全面覆盖了这两个平台的基础知识、核心概念以及高级特性,对于想要深入理解和掌握Mono在Android开发中的应用非常有价值。 首先,我们来了解一下Mono for Android。它是一个.NET开发环境,允许开发者...

    修改程序所有页面字体颜色和背景

    在Android开发中,为了提供个性化的用户体验,有时我们需要根据用户需求改变应用的界面风格,包括字体颜色、字体大小以及背景色。"修改程序所有页面字体颜色和背景"这个主题涉及到了Android中的主题(Themes)和...

    android TextView 文字部分渐变

    在Android开发中,有时我们...总之,Android的`LinearGradient`、`FontSpan`和`SpannableString`为我们提供了强大的文本样式定制能力,利用它们可以轻松实现TextView的文字部分渐变色,提升界面的美观度和用户体验。

    Android自定义TextView带圆角及背景颜色

    总结起来,通过创建自定义的ColorfulCornerTextView,我们实现了TextView的圆角和背景颜色的动态设置,这使得在Android应用中能够更加便捷地调整视图样式,而无需为每种颜色创建单独的XML背景资源。这样的自定义组件...

    修改spinner字体大小及颜色,还有列表样式

    -- 修改下拉列表字体大小和颜色 --&gt; &lt;item name="android:textSize"&gt;16sp &lt;item name="android:textColor"&gt;#000000 &lt;/style&gt; ``` - 然后在Spinner的XML布局或代码中应用这个主题: ```xml android:layout_...

    安卓Android源码——textView.rar

    此外,还可以通过Spannable和SpannableString添加样式,如改变字体、颜色、下划线等。 7. **输入法交互**: 如果TextView设置了inputType为编辑模式,它会与软键盘交互,接收用户输入。这时,TextView需要处理IME...

Global site tag (gtag.js) - Google Analytics