【android编程】 第四讲-Android基本控件

萧业
2023-12-01

Android 基本控件

实践题Code链接:https://blog.csdn.net/xbean1028/article/details/104771845

文本框 TextView

基本属性

id设置一个组件id,通过findViewById()的方法获取到该对象,然后进行相关设置
layout_width组件宽度
layout_height组件高度
text设置文本内容
background背景颜色(或背景图片)
textColor设置字体颜色
textStyle设置字体样式
textSize字体大小
gravity内容的对齐方向
autoLinkautoLink的属性可以将符合指定格式的文本转换为可单击的超链接形式
drawableTopTextView上部出现一个图片

1、对于layout_width和layout_height:

(1)、wrap_content:控件的大小根据里面的内容大小而定,内容越小,则空间越小,反之亦然。

(2)、match_parent:控件大小填满整个父容器:

(3)、fill_parent:作用和效果同上,不过新版本不怎么使用这个了。

2、对于text:

将字符串放置在value文件夹的strings.xml文件下:

在activity_main.xml中使用@string/来调用这个字符串资源,“”号代表string定义的name:

(1)、textColor:字体颜色,将颜色配置在colors.xml文件中:

activity_main.xml中,用@color/*进行调用:

(2)、textSize:设置字体大小。

扩展:设置大小的单位(字体,也包括控件大小)

dp: 设备独立像素,不同设备有不同的显示效果,这个和设备硬件有关,不依赖像素。

px: 像素,在 不同设备显示的效果相同。

pt: 标准的长度单位,简单易用,单位换算1pt=1/72英寸。

sp: 用于字体显示。

(3)、textStyle:三种选择。

normal(无任何效果,常规):

bold(文字加粗):

italic(字体倾斜):

(4)、gravity:设置对齐方式:

常用的对齐方式有:

center:居中对齐,位于容器横向和纵向的中央
left:向左对齐,位于容器左边
right:向右对齐,位于容器右边
bottom:向底对齐,位于容器底部
top:向顶对齐,位于容器顶部
center_vertical:位置置于容器的纵向中央部分
center_horizontal:位置置于容器的横向中央部分
fill_vertical:纵向延伸填满容器
fiil_horizontal:横向延伸填满容器
fiil:纵向和横向延伸填满容器

使用两个值叠加定位,用“|”进行分割,、

(5)、background:背景颜色或背景图片

(6)、shadow:文字阴影效果

shadowColor设置阴影颜色
shadowRadius设置阴影模糊程度
shadowDx设置阴影在水平方向的偏移
shadowDy设置阴影在竖直方向的偏移

shadowColor属性用来设置阴影颜色,颜色可以再colors.xml中预先配置;

shadowRadius属性设置模糊程度,数值越大,阴影就越模糊;

shadowDx属性设置在水平方向上的偏移量,数值越大,则阴影越向右移动;

shadowDy属性设置在垂直方向上的偏移量,数值越大,则阴影越向下移动。

(7)、autoLink:链接类型

none:表示不进行任何匹配,默认。

web:表示匹配Web Url:http://www.baidu.com会成为可单击跳转的超链接。

email:表示匹配邮件地址:邮件地址为584224xxx@163.com会成为可单击的超链接。

phone:表示匹配电话号码:点击号码10086会跳到拨号界面。

map:表示匹配地图地址。

all:表示将会匹配web、email、phone、map所有类型。

android:textColorLink可以修改链接字体的颜色。

其他属性

1、android:autoLink设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all)
2、android:autoText如果设置,将自动执行输入值的拼写纠正。此处无效果,在显示输入法并输入的时候起作用。
3、android:bufferType指定getText()方式取得的文本类别。选项editable 类似于StringBuilder可追加字符,

也就是说getText后可调用append方法设置文本内容。spannable 则可在给定的字符区域使用样式,参见这里1、这里2。

4、android:capitalize设置英文字母大写类型。此处无效果,需要弹出输入法才能看得到,参见EditView此属性说明。
5、android:cursorVisible设定光标为显示/隐藏,默认显示。
6、android:digits设置允许输入哪些字符。如“1234567890.±*/% ()”
7、android:drawableBottom在text的下方输出一个drawable,如图片。如果指定一个颜色的话会把text的背景设为该颜色,并且同时和background使用时覆盖后者。
8、android:drawableLeft在text的左边输出一个drawable,如图片。
9、android:drawablePadding设置text与drawable(图片)的间隔,与drawableLeft、drawableRight、drawableTop、drawableBottom一起使用,可设置为负数,单独使用没有效果。
10、android:drawableRight在text的右边输出一个drawable。
11、android:drawableTop在text的正上方输出一个drawable。
12、android:editable设置是否可编辑。
13、android:editorExtras设置文本的额外的输入数据。
14、android:ellipsize设置当文字过长时,该控件该如何显示。有如下值设置:”start”—?省略号显示在开头;”end”——省略号显示在结尾;”middle”—-省略号显示在中间;”marquee” ——以跑马灯的方式显示(动画横向移动)
15、android:freezesText设置保存文本的内容以及光标的位置。
16、android:gravity设置文本位置,如设置成“center”,文本将居中显示。
17、android:hintText为空时显示的文字提示信息,可通过textColorHint设置提示信息的颜色。此属性在EditView中使用,但是这里也可以用。
18、android:imeOptions附加功能,设置右下角IME动作与编辑框相关的动作,如actionDone右下角将显示一个“完成”,而不设置默认是一个回车符号。
19、android:imeActionId设置IME动作ID。
20、android:imeActionLabel设置IME动作标签。
21、android:includeFontPadding设置文本是否包含顶部和底部额外空白,默认为true。
22、android:inputMethod为文本指定输入法,需要完全限定名(完整的包名)。例如:com.google.android.inputmethod.pinyin,但是这里报错找不到。
23、android:inputType设置文本的类型,用于帮助输入法显示合适的键盘类型。在EditView中再详细说明,这里无效果。
24、android:linksClickable设置链接是否点击连接,即使设置了autoLink。
25、android:marqueeRepeatLimit在ellipsize指定marquee的情况下,设置重复滚动的次数,当设置为marquee_forever时表示无限次。
26、android:ems设置TextView的宽度为N个字符的宽度。这里测试为一个汉字字符宽度
27、android:maxEms设置TextView的宽度为最长为N个字符的宽度。与ems同时使用时覆盖ems选项。
28、android:minEms设置TextView的宽度为最短为N个字符的宽度。与ems同时使用时覆盖ems选项。
29、android:maxLength限制显示的文本长度,超出部分不显示。
30、android:lines设置文本的行数,设置两行就显示两行,即使第二行没有数据。
31、android:maxLines设置文本的最大显示行数,与width或者layout_width结合使用,超出部分自动换行,超出行数将不显示。
32、android:minLines设置文本的最小行数,与lines类似。
33、android:lineSpacingExtra设置行间距。
34、android:lineSpacingMultiplier设置行间距的倍数。如”1.2”
35、android:numeric如果被设置,该TextView有一个数字输入法。此处无用,设置后唯一效果是TextView有点击效果,此属性在EdtiView将详细说明。
36、android:password以小点”.”显示文本
37、android:phoneNumber设置为电话号码的输入方式。
38、android:privateImeOptions设置输入法选项,此处无用,在EditText将进一步讨论。
39、android:scrollHorizontally设置文本超出TextView的宽度的情况下,是否出现横拉条。
40、android:selectAllOnFocus如果文本是可选择的,让他获取焦点而不是将光标移动为文本的开始位置或者末尾位置。TextView中设置后无效果。
41、android:shadowColor指定文本阴影的颜色,需要与shadowRadius一起使用。
42、android:shadowDx设置阴影横向坐标开始位置。
43、android:shadowDy设置阴影纵向坐标开始位置。
44、android:shadowRadius设置阴影的半径。设置为0.1就变成字体的颜色了,一般设置为3.0的效果比较好。
45、android:singleLine设置单行显示。如果和layout_width一起使用,当文本不能全部显示时,后面用“…”来表示。如android:text="test_ singleLine "android:singleLine=“true” android:layout_width="20dp"将只显示“t…”。如果不设置singleLine或者设置为false,文本将自动换行
46、android:text设置显示文本.
47、android:textAppearance设置文字外观。如“?android:attr/textAppearanceLargeInverse”这里引用的是系统自带的一个外观,?表示系统是否有这种外观,否则使用默认的外观。可设置的值如下:textAppearanceButton/textAppearanceInverse/textAppearanceLarge/textAppearanceLargeInverse/textAppearanceMedium/textAppearanceMediumInverse/textAppearanceSmall/textAppearanceSmallInverse
48、android:textColor设置文本颜色
49、android:textColorHighlight被选中文字的底色,默认为蓝色
50、android:textColorHint设置提示信息文字的颜色,默认为灰色。与hint一起使用。
51、android:textColorLink文字链接的颜色.
52、android:textScaleX设置文字之间间隔,默认为1.0f。
53、android:textSize设置文字大小,推荐度量单位”sp”,如”15sp”
54、android:textStyle设置字形[bold(粗体) 0, italic(斜体) 1, bolditalic(又粗又斜) 2] 可以设置一个或多个,用“
55、android:typeface设置文本字体,必须是以下常量值之一:normal 0, sans 1, serif 2, monospace(等宽字体) 3]
56、android:height设置文本区域的高度,支持度量单位:px(像素)/dp/sp/in/mm(毫米)
57、android:maxHeight设置文本区域的最大高度
58、android:minHeight设置文本区域的最小高度
59、android:width设置文本区域的宽度,支持度量单位:px(像素)/dp/sp/in/mm(毫米),与layout_width的区别看这里。
60、android:maxWidth设置文本区域的最大宽度
61、android:minWidth设置文本区域的最小宽度

编辑框 EditText

EditText et = (EditText)findViewById(R.id.edittext);
String str = et.getText().toString();

android:hint=“请输入数字!” 设置显示在空间上的提示信息

android:numeric=“integer” 设置只能输入整数,如果是小数则是:decimal

android:singleLine=“true” 设置单行输入,一旦设置为true,则文字不会自动换行。

android:password=“true” 设置只能输入密码

android:textColor = “#ff8c00” 字体颜色

android:textStyle=“bold” 字体,bold, italic, bolditalic

android:textSize=“20dip” 大小

android:capitalize = “characters” 以大写字母写

android:textAlign=“center” EditText没有这个属性,但TextView有,居中>android:textColorHighlight="#cccccc"

被选中文字的底色,默认为蓝色

android:textColorHint="#ffff00" 设置提示信息文字的颜色,默认为灰色

android:textScaleX=“1.5” 控制字与字之间的间距

android:typeface=“monospace” 字型,normal, sans, serif, monospace

android:background="@null" 背景,这里没有,指透明

android:layout_weight=“1” 权重,控制控件之间的地位,在控制控件显示的大小时蛮有用的。

android:textAppearance="?android:attr/textAppearanceLargeInverse" 文字外观

android:layout_gravity=“center_vertical” 设置控件显示的位置:默认top,这里居中显示

bottomandroid:gray=“top” 多行中指针在第一行第一位置

et.setSelection(et.length()); 调整光标到最后一行

android:autoText 自动拼写帮助

android:capitalize 首字母大写

android:digits 设置只接受某些数字

android:singleLine 是否单行或者多行,回车是离开文本框还是文本框增加新行

android:numeric 只接受数字

android:phoneNumber 输入电话号码

android:editable 是否可编辑

android:autoLink=”all” 设置文本超链接样式当点击网址时,跳向该网址

android:textAppearance="?android:attr/textAppearanceLargeInverse" 文字外观,这里引用的系统自带的一个外观,?表示系统是否有这种外观,否则使用默认的外观,可设置的值如下:
textAppearanceButton/textAppearanceInverse/textAppearanceLarge/textAppearanceLargeInverse/textAppearanceMedium/textAppearanceMediumInverse。

android:autoLink 设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all)

android:autoText 如果设置,将自动执行输入值的拼写纠正。此处无效果,在显示输入法并输入的时候起作用。

android:bufferType 指定getText()方式取得的文本类别。选项editable 类似于StringBuilder可追加字符,也就是说getText后可调用append方法设置文本内容。spannable 则可在给定的字符区域使用样式。

android:capitalize 设置英文字母大写类型。此处无效果,需要弹出输入法才能看得到。

android:cursorVisible 设定光标为显示/隐藏,默认显示。

android:digits 设置允许输入哪些字符。如“1234567890.±*/% ()”

android:drawableBottom 在text的下方输出一个drawable,如图片。如果指定一个颜色的话会把text的背景设为该颜色,并且同时和background使用时覆盖后者。

android:drawableLeft 在text的左边输出一个drawable,如图片。

android:drawablePadding 设置text与drawable(图片)的间隔,与drawableLeft、drawableRight、drawableTop、drawableBottom一起使用,可设置为负数,单独使用没有效果。

android:drawableRight 在text的右边输出一个drawable,如图片。

android:drawableTop 在text的正上方输出一个drawable,如图片。

android:ellipsize 设置当文字过长时,该控件该如何显示。有如下值设置:
”start”—?省略号显示在开头;
”end”——省略号显示在结尾;
”middle”—-省略号显示在中间;
”marquee” ——以跑马灯的方式显示(动画横向移动);

android:freezesText 设置保存文本的内容以及光标的位置。

android:gravity 设置文本位置,如设置成“center”,文本将居中显示。

android:hintText 为空时显示的文字提示信息,可通过textColorHint设置提示信息的颜色。此属性在EditView中使用,但是这里也可以用。

android:imeOptions 附加功能,设置右下角IME动作与编辑框相关的动作,如actionDone右下角将显示一个“完成”,而不设置默认是一个回车符号。

android:imeActionId 设置IME动作ID。

android:imeActionLabel 设置IME动作标签。

android:includeFontPadding 设置文本是否包含顶部和底部额外空白,默认为true。

android:inputMethod 为文本指定输入法,需要完全限定名(完整的包名)。例如:
com.google.android.inputmethod.pinyin

android:inputType 设置文本的类型,用于帮助输入法显示合适的键盘类型。

android:linksClickable 设置链接是否点击连接,即使设置了autoLink。

android:marqueeRepeatLimit 在ellipsize指定marquee的情况下,设置重复滚动的次数,当设置为marquee_forever时表示无限次。

android:ems 设置TextView的宽度为N个字符的宽度。这里测试为一个汉字字符宽度,android:maxEms设置TextView的宽度为最长为N个字符的宽度。与ems同时使用时覆盖ems选项。android:minEms设置TextView的宽度为最短为N个字符的宽度。与ems同时使用时覆盖ems选项。

android:maxLength 限制显示的文本长度,超出部分不显示。

android:lines 设置文本的行数,设置两行就显示两行,即使第二行没有数据。

android:maxLines 设置文本的最大显示行数,与width或者layout_width结合使用,超出部分自动换行,超出行数将不显示。

android:minLines 设置文本的最小行数,与lines类似。

android:lineSpacingExtra 设置行间距。

android:lineSpacingMultiplier 设置行间距的倍数。如”1.2”

android:numeric 如果被设置,该TextView有一个数字输入法。

android:password 以小点”.”显示文本

android:phoneNumber 设置为电话号码的输入方式。

android:scrollHorizontally 设置文本超出TextView的宽度的情况下,是否出现横拉条。

android:selectAllOnFocus 如果文本是可选择的,让他获取焦点而不是将光标移动为文本的开始位置或者末尾位置。

android:shadowColor 指定文本阴影的颜色,需要与shadowRadius一起使用。

android:shadowDx 设置阴影横向坐标开始位置。

android:shadowDy 设置阴影纵向坐标开始位置。

android:shadowRadius 设置阴影的半径。设置为0.1就变成字体的颜色了,一般设置为3.0的效果比较好。

android:singleLine 设置单行显示。如果和layout_width一起使用,当文本不能全部显示时,后面用“…”来表示。如android:text="test_ singleLine ",android:singleLine=“true” android:layout_width="20dp"将只显示“t…”。如果不设置singleLine或者设置为false,文本将自动换行android:shadowDx设置阴影横向坐标开始位置。

android:shadowDy 设置阴影纵向坐标开始位置。

android:typeface 设置文本字体,必须是以下常量值之一:normal 0, sans 1, serif 2, monospace(等宽字体) 3]

android:height 设置文本区域的高度,支持度量单位:px(像素)/dp/sp/in/mm(毫米)

android:maxHeight 设置文本区域的最大高度

android:minHeight 设置文本区域的最小高度

android:width 设置文本区域的宽度,支持度量单位:px(像素)/dp/sp/in/mm(毫米),与layout_width的区别看这里。

android:maxWidth 设置文本区域的最大宽度

android:minWidth 设置文本区域的最小宽度

普通按钮 Button

Button b = (Button)findViewById(R.id.button1);
b.setOnClickListener(new OnClickListemer)
{
	public void onClick(View v)
    {
        
    }
}
android:onClick="myclick"
public void myclick(View v)
{

}

图片按钮ImageButton

src指定图片

background= “#0FFF”不显示立体边框

单选按钮 RadioButton

RadioGroup
RadioButton
check="true"默认

单选监听或提交监听

复选按钮 CheckBox

图像视图 ImageView

android:adjustViewBounds:
用于设置ImageView是否调整自己的边界来保持所显示图片的长宽比。

android:maxHeight:
设置ImageView的最大高度,需要设置android:adjustViewBounds属性值为true,否则不起作用。

android:maxWidth:
设置ImageView的最大宽度,需要设置android:adjustViewBounds属性值为true,否则不起作用。

android:scaleType:
(1)matrix(ImageView.ScaleType.MATRIX):使用matrix方式进行缩放
  (2)fitXY(ImageView.ScaleType.FIT_XY):对图片横向、纵向独立缩放,使得该图片完全适应该ImageView,图片的纵横比可能会改变
  (3)fitStart(ImageView.ScaleType.FIT_START):保持纵横比缩放图片,直到该图片能完全显示在ImageView中,缩放完成后将该图片放在ImageView的左上角
  (4)fitCenter(ImageView.ScaleType.FIT_CENTER):保持纵横比缩放图片,直到该图片能完全显示在ImageView中,缩放完成后将图片放在ImageView的中央
  (5)fitEnd(ImageView.ScaleType.FIT_END):保持纵横比缩放图片,直到该图片能完全显示在ImageView中,缩放完成后将该图片放在ImageView的右下角
  (6)center(ImageView.ScaleType.CENTER):把图片放在ImageView的中间,但不进行任何缩放
  (7)centerCrop(ImageView.ScaleType.CENTER_CROP):保持纵横比缩放图片,以使得图片能完全覆盖ImageView
  (8)centerInside(ImageView.ScaleType.CENTER_INSIDE):保持纵横比缩放图片,以使得ImageView能完全显示该图片。

android:src:
用于设置ImageView所显示的Drawable对象的ID,例如,设置显示保存在res/drawable目录下的名称为flower.jpg的图片,可以将属性值设置为android:src="@drawable/flower"。

android:tint:
用于为图片着色,其属性值可以是“#rgb”、“#argb”、“#rrggbb”或“#aarrggbb”表示的颜色值。

使用私有对象响应按钮点击


题目笔记

在文字超过TextView的范围时 B

  • A.自动按多行文本显示
  • B.超出的部分用省略号代替
  • C.程序生成时会提示错误
  • D.超出的部分被忽略

Android中的TextView组件 C

  • A.和Java中的Label完全相同
  • B.只能显示多行文本
  • C.可以显示单行文本也可以显示多行文本1.00/1.00
  • D.只能显示单行文本

Android中的TextView组件 A

  • A.可以显示图片和文字1.00/1.00
  • B.可以显示视频
  • C.只显示文字
  • D.只显示图片

获取编辑框的文本的方法是 C

  • A.使用read的方法
  • B.使用findViewById()方法
  • C.使用getText()方法1.00/1.00
  • D.EditText的ID.toString()方法

Android中编辑框 D

  • A.可以输入富文本
  • B.只能输入单行文本
  • C.只能输入多行文本
  • D.可以输入指定格式的文本

设置TextView中文本的方法是 C

  • A.可以使用TextView控件的ID.Text=文本设置
  • B.可以使用toString()方法设置
  • C.可以在java程序中使用setText()方法设置1.00/1.00
  • D.可以使用findViewById()设置

为了响应按钮单击事件可使用 B

  • A.抬起事件侦听器
  • B.为按钮设置一个单击事件侦听器1.00/1.00
  • C.为按钮设置一个按下事件侦听器
  • D.基本事件侦听器

响应按钮单击事件 D

  • A.只能在java文件中设置以有名对象为参数的侦听器
  • B.只能在java文件中设置以匿名对象为参数的侦听器
  • C.只能使用xml布局文件中按钮中Onclick标记实现
  • D.前面三个方法都可以

图片按钮将背景设置透明时 B

  • A.无变化
  • B.只是边框消失1.00/1.00
  • C.图片按钮消失
  • D.图片不可见

android:gravity的含义是 B

  • A.设置重力效果
  • B.设置文本框内文本的对齐方式1.00/1.00
  • C.设置控件在布局中的对齐方式
  • D.其值只能是true或false
 类似资料: