Android基本界面组件1-----文本框与编辑框的功能和用法

文本框(TextView)与编辑框(EditText)的功能和用法

TextView直接继承了View,它还是EditText、Button两个UI 组件类的父类。TextView的作用就是在界面上显示文本----从这个意义上来看,它有点类似于Swing编程中的JLabel,不过它比JLabel功能要强大。

从功能上来看,TextView其实就是一个文本编辑器,只是Android关闭了它的文字编辑功能,如果开发者想要定义一个可以编辑内容的文本框,则可以用它的子类:EditText,EditText允许用户编辑文本框中的内容。

不仅如此,TextView还派生除了Button类。

两者最大的区别就是TextView不允许用户编辑文本内容,而EditText则允许用户编辑文本内容。

例子1:不同字体、不同颜色的文本、URL

main.xml代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical"
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
	>
	<!-- 设置字体为20pt -->
	<TextView 
	    android:layout_width="fill_parent"
	    android:layout_height="wrap_content"
	    android:text="我爱谷飞"
	    android:textSize="20pt"
	    android:textColor="#ff0000"
	    />
	<!-- 设置中间省略 -->
	<TextView 
	    android:layout_width="fill_parent"
	    android:layout_height="wrap_content"
	    android:singleLine="true"
	    android:text="我爱谷飞我爱谷飞 我爱谷飞我爱谷飞爱爱爱爱爱我爱谷飞我爱谷飞爱爱"
	    android:ellipsize="middle"/>
	<!-- 对邮件增加超链接 -->
	<TextView 
	    android:layout_width="fill_parent"
	    android:layout_height="wrap_content"
	    android:singleLine="true"
	    android:text="测试jintiangufei@163.com内容"
	    android:autoLink="email"/>
	<!-- 设置文字颜色、大小,并使用阴影 -->
	<TextView 
	    android:layout_width="fill_parent"
	    android:layout_height="wrap_content"
	    android:text="南京航空航天大学"
	    android:shadowColor="#0000ff"
	    android:shadowDx="15.0"
	    android:shadowDy="20.0"
	    android:shadowRadius="45.0"
	    android:textColor="#ff0000"
	    android:textSize="25pt"
	    />
	<!-- 测试密码框 -->
	<TextView 
	    android:id="@+id/passwd"
	    android:layout_width="fill_parent"
	    android:layout_height="wrap_content"
	    android:text="@string/hello"
	    android:password="true"/>
</LinearLayout>

java代码

package com.nuaa.testviewtest;

import android.app.Activity;
import android.os.Bundle;

public class TestViewTest extends Activity {
	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
	}

}

 

 

例子2:带边框、图片的TextView

main.xml代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical"
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
	>
	<!-- 通过android:background指定背景 -->
	<TextView 
	    android:layout_width="fill_parent"
	    android:layout_height="wrap_content"
	    android:text="带边框的文本"
	    android:background="@drawable/bg_border"/>
	<!-- 通过android:drawableleft绘制一张图片 -->
	<TextView 
	    android:layout_width="fill_parent"
	    android:layout_height="wrap_content"
	    android:text="带图片的文本"
	    android:drawableLeft="@drawable/icon"
	    android:drawableRight="@drawable/leaf"
	    android:background="@drawable/bg_border"/>
	</LinearLayout>

java代码

package com.nuaa.testviewtest2;

import android.app.Activity;
import android.os.Bundle;

public class TestViewTest2 extends Activity {
	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
	}

}

 

例子3:用户友好的输入界面

main.xml代码

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical"
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
	>
	<TableRow >
	    <TextView 
	        android:layout_width="fill_parent"
	        android:layout_height="wrap_content"
	        android:text="用户名"
	        android:textSize="10pt"
	        android:background="@drawable/bg_border"/>
	    <EditText 
	        android:layout_width="fill_parent"
	        android:layout_height="wrap_content"
	        android:hint="请填写登录账号"
	        android:selectAllOnFocus="true"/>
	</TableRow>
	<TableRow >
	    <TextView 
	        android:layout_width="fill_parent"
	        android:layout_height="wrap_content"
	        android:text="密码"
	        android:textSize="10pt"
	        android:background="@drawable/bg_border"/>
	    <EditText 
	        android:layout_width="fill_parent"
	        android:layout_height="wrap_content"
	        android:password="true"/>
	</TableRow>
	<TableRow >
	    <TextView 
	        android:layout_width="fill_parent"
	        android:layout_height="wrap_content"
	        android:text="电话号码"
	        android:textSize="10pt"
	        android:background="@drawable/bg_border"/>
	    <EditText 
	        android:layout_width="fill_parent"
	        android:layout_height="wrap_content"
	        android:hint="请填写您的电话号码"
	        android:selectAllOnFocus="true"
	        android:phoneNumber="true"/>
	</TableRow>
	<Button 
	    android:layout_width="wrap_content"
	    android:layout_height="wrap_content"
	    android:text="注册"/>
	</TableLayout>

Java代码

 

package com.nuaa.inputuitest;

import android.app.Activity;
import android.os.Bundle;

public class InputUITest extends Activity {
	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
	}

}

转载于:https://my.oschina.net/jintiangufei/blog/88368

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值