EditText
简介:EditText是一个非常重要的组件,可以说它是用户和Android应用进行数据传输窗户,有了它就等于有了一扇和Android应用传输的门,通过它用户可以把数据传给Android应用,然后得到我们想要的数据。
- et.setSelection(content.length());光标位置(定位到最后)
- EditText是TextView的子类,所以TextView的方法和特性同样存在于EditText中
使用场景
有时候我们有一些特属的需要,要求只能在EditText中输入特定个数的字符,比如身份证号、手机号码等。这时候就可以通过android:maxLength属性来设置最大输入字符个数,比如android:maxLength=“4”就表示最多能输入4个字符,再多了就输入不进去了。
上代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
android:orientation="vertical"
tools:context=".MainActivity">
<EditText
android:id="@+id/editText"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:hint="请输入..."
/>
</LinearLayout>
- 运行到手机上,点击弹出默认手机键盘,可输入文字
- 代码控制 EditText
布局设置一个控件id,根据id,我们可以在Java代码中通过findViewById()的方法获取到该对象,然后进行相关属性的设置 (所有的方法都有id)
public class MainActivity extends AppCompatActivity {
private EditText editText;//声明一个EditText ,用来接收布局的id,来处理事件
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editText=findViewById(R.id.editText);
//设置输入的字体颜色
editText.setTextColor(getResources().getColor(R.color.ceshi));
//获取到输入的内容
String edit = editText.getText().toString();
}
}
效果图
其他属性
有一个比较实用的功能,就是设置EditText的不可编辑。设置android:enabled="false"可以实现不可编辑,可以获得焦点。这时候我们看到EditText和一个TextView差不多,如果不设置默认android:enabled=“true” 是可编辑的