📌  相关文章
📜  在Android中使用EditText(1)

📅  最后修改于: 2023-12-03 15:37:34.165000             🧑  作者: Mango

在Android中使用EditText

在Android应用程序中,EditText是一个用于接受文本输入的控件。本文将介绍如何在Android中使用EditText

添加EditText控件

要向Android应用程序中添加EditText控件,只需在相应的XML布局文件中添加以下代码:

<EditText
    android:id="@+id/editText"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="Enter text here" />

此代码段将在布局中添加一个新的EditText控件。android:id属性用于指定该控件的标识符,以便在运行时引用它。android:layout_widthandroid:layout_height属性用于指定该控件的宽度和高度。android:hint属性是一个可选属性,可在控件中显示默认的提示文本。

在Activity中引用EditText控件

要从Activity中引用EditText控件,在OnCreate方法中添加以下代码:

EditText editText = (EditText) findViewById(R.id.editText);

此代码段将为变量editText分配新的EditText对象,并使用findViewById方法引用XML布局中定义的控件ID。

获取和设置文本

要获取EditText控件中的文本,请使用以下方法:

String text = editText.getText().toString();

此代码段将获取EditText控件的文本,并将其存储在text变量中。要设置EditText控件的文本,请使用以下方法:

editText.setText("New text");

此代码段将EditText控件的文本设置为“New text”。

监听文本更改

要在用户更改EditText控件中的文本时执行某些操作,请使用以下代码:

editText.addTextChangedListener(new TextWatcher() {
    @Override
    public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
        // Do something before the text is changed
    }

    @Override
    public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
        // Do something while the text is being changed
    }

    @Override
    public void afterTextChanged(Editable editable) {
        // Do something after the text has been changed
    }
});

此代码段将为EditText控件添加一个TextWatcher对象,该对象将监听文本更改并在相应事件上执行特定的操作。

EditText控件添加焦点和软键盘

要使EditText控件自动获得焦点并在打开应用程序时打开软键盘,请在布局文件中将其添加到父Layout控件中:

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:focusable="true"
    android:focusableInTouchMode="true">
    
    <EditText
        android:id="@+id/editText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Enter text here" />
    
</RelativeLayout>

此代码段将使整个布局可获取焦点,并在打开应用程序时自动为EditText控件打开软键盘。

至此,已介绍了在Android应用程序中使用EditText控件的基本用法。如需进一步了解,请参阅官方文档。