当前位置:K88软件开发文章中心编程语言APP编程Android01 → 文章内容

2.3.1 TextView(文本框)详解

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-12 6:25:08

本节引言:学习完Android中的六大布局,从本节开始我们来一个个讲解Android中的UI控件,本节给大家带来的UI控件是:TextView(文本框),用于显示文本的一个控件,另外声明一点,我不是翻译API文档,不会一个个属性的去扣,只学实际开发中常用的,有用的,大家遇到感觉到陌生的属性可以查询对应的API!当然,每一节开始都会贴这一节对应API文档的链接:TextView API 好了,在开始本节内容前,先要介绍下几个单位:dp(dip): device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用;sp: scaled pixels(放大像素). 主要用于字体显示best for textsize。1.基础属性详解:通过下面这个简单的界面,我们来了解几个最基本的属性:布局代码:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" android:gravity="center" android:background="#8fffad"> <TextView android:id="@+id/txtOne" android:layout_width="200dp" android:layout_height="200dp" android:gravity="center" android:text="TextView(显示框)" android:textColor="#EA5246" android:textStyle="bold|italic" android:background="#000000" android:textSize="18sp" /></RelativeLayout>上面的TextView中有下述几个属性:id:为TextView设置一个组件id,根据id,我们可以在Java代码中通过findViewById()的方法获取到该对象,然后进行相关属性的设置,又或者使用RelativeLayout时,参考组件用的也是id!layout_width:组件的宽度,一般写:**wrap_content**或者**match_parent(fill_parent)**,前者是控件显示的内容多大,控件就多大,而后者会填满该控件所在的父容器;当然也可以设置成特定的大小,比如我这里为了显示效果,设置成了200dp。layout_height:组件的宽度,内容同上。gravity:设置控件中内容的对齐方向,TextView中是文字,ImageView中是图片等等。text:设置显示的文本内容,一般我们是把字符串写到string.xml文件中,然后通过@String/xxx取得对应的字符串内容的,这里为了方便我直接就写到""里,不建议这样写!!!textColor:设置字体颜色,同上,通过colors.xml资源来引用,别直接这样写!textStyle:设置字体风格,三个可选值:**normal**(无效果),**bold**(加粗),**italic**(斜体)textSize:字体大小,单位一般是用sp!background:控件的背景颜色,可以理解为填充整个控件的颜色,可以是图片哦! 2.实际开发例子2.1 带阴影的TextView涉及到的几个属性:android:shadowColor:设置阴影颜色,需要与shadowRadius一起使用哦!android:shadowRadius:设置阴影的模糊程度,设为0.1就变成字体颜色了,建议使用3.0android:shadowDx:设置阴影在水平方向的偏移,就是水平方向阴影开始的横坐标位置android:shadowDy:设置阴影在竖直方向的偏移,就是竖直方向阴影开始的纵坐标位置效果图:实现代码:<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:shadowColor="#F9F900" android:shadowDx="10.0" android:shadowDy="10.0" android:shadowRadius="3.0" android:text="带阴影的TextView" android:textColor="#4A4AFF" android:textSize="30sp" />2.2 带边框的TextView:如果你想为TextView设置一个边框背景,普通矩形边框或者圆角边框!下面可能帮到你!另外TextView是很多其他控件的父类,比如Button,也可以设置这样的边框!实现原理很简单,自行编写一个ShapeDrawable的资源文件!然后TextView将blackgroung设置为这个drawable资源即可!简单说下shapeDrawable资源文件的几个节点以及属性:<solid android:color = "xxx"> 这个是设置背景颜色的<stroke android:width = "xdp" android:color="xxx"> 这个是设置边框的粗细,以及边框颜色的<padding androidLbottom = "xdp"...> 这个是设置边距的<corners android:topLeftRadius="10px"...> 这个是设置圆角的<gradient> 这个是设置渐变色的,可选属性有:startColor:起始颜色 endColor:结束颜色 centerColor:中间颜色angle:方向角度,等于0时,从左到右,然后逆时针方向转,当angle = 90度时从下往上type:设置渐变的类型实现效果图:代码实现:Step 1:编写矩形边框的Drawable:<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" > <!-- 设置一个黑色边框 --> <stroke android:width="2px" android:color="#000000"/> <!-- 渐变 --> <gradient android:angle="270" android:endColor="#C0C0C0" android:startColor="#FCD209" /> <!-- 设置一下边距,让空间大一点 --> <padding android:left="5dp" android:top="5dp" android:right="5dp" android:bottom="5dp"/></shape> Step 2:编写圆角矩形边框的Drawable:<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android"> <!-- 设置透明背景色 --> <solid android:color="#87CEEB" /> <!-- 设置一个黑色边框 --> <stroke android:width="2px" android:color="#000000" /> <!-- 设置四个圆角的半径 --> <corners android:bottomLeftRadius="10px" android:bottomRightRadius="10px" android:topLeftRadius="10px" android:topRightRadius="10px" /> <!-- 设置一下边距,让空间大一点 --> <padding android:bottom

[1] [2] [3] [4]  下一页


2.3.1 TextView(文本框)详解