一:
EditText是一个非常重要的组件,可以说它是用户和Android应用进行数据传输窗户,有了它就等于有了一扇和Android应用传输的门,通过它用户可以把数据传给Android应用,然后得到我们想要的数据。
EditText是TextView的子类,所以TextView的方法和特性同样存在于EditText中。
二:
EditText常用属性:
android:text="这是一个EditText" 普通文本
android:hint="请输入。。。" 空白提示文字
android:password="true" 密码文本框
android:maxLength="10" 最多可以输入多少个字符
android:phoneNumber="true" 电话号码格式
android:enabled="false" 设为false文本不可编辑
android:textColor="#520" 修改文本颜色
android:textSize="20dp" 字体大小
android:cursorVisible="true" 游标是否隐藏
android:imeOptions="actionSearch" 指定输入法窗口中的回车键的功能
android:inputType="date" 指定输入法的类型
三:EditText的取值、全选、部分选择、获取选中文本
MainActivity.java
package com.signal027.edittextdemo;
import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.text.Selection;
import android.view.KeyEvent;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText mEditText = (EditText) findViewById(R.id.edit_text);
//监听回车键
mEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
Toast.makeText(MainActivity.this, String.valueOf(actionId), Toast.LENGTH_SHORT).show();
return false;
}
});
//获取EditText文本
Button getValue = (Button) findViewById(R.id.btn_getValue);
getValue.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this,mEditText.getText().toString(),Toast.LENGTH_SHORT).show();
}
});
//让EditText全选
Button all = (Button) findViewById(R.id.btn_all);
all.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mEditText.selectAll();
}
});
//从第2个字符开始选择EditText文本
Button select = (Button) findViewById(R.id.btn_select);
select.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Editable editable = mEditText.getText();
Selection.setSelection(editable,1,editable.length());
}
});
//获取选中的文本
Button getSelect = (Button) findViewById(R.id.btn_getSelect);
getSelect.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int selectionStart = mEditText.getSelectionStart();
int selectionEnd = mEditText.getSelectionEnd();
CharSequence charSequence = mEditText.getText().subSequence(selectionStart, selectionEnd);
Toast.makeText(MainActivity.this,charSequence,Toast.LENGTH_SHORT).show();
}
});
}
//交换索引
protected void switchIndex(int start,int end){
int temp = 0;
temp = start;
start = end;
end = start;
}
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<EditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入。。。"
android:imeOptions="actionSearch"/>
<Button
android:id="@+id/btn_getValue"
android:text="取值"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/btn_all"
android:text="全选"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/btn_select"
android:text="从第二个开始选"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/btn_getSelect"
android:text="获取文本"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>