Android - Control EditText

Un EditText es una superposición sobre TextView que se configura a sí mismo para ser editable. Es la subclase predefinida de TextView que incluye amplias capacidades de edición.

Estilos de editar texto

Atributos de EditText

A continuación se muestran los atributos importantes relacionados con el control EditText. Puede consultar la documentación oficial de Android para obtener una lista completa de atributos y métodos relacionados que puede usar para cambiar estos atributos en tiempo de ejecución.

Heredado de android.widget.TextView Clase -

No Señor Atributo y descripción
1

android:autoText

Si se establece, especifica que este TextView tiene un método de entrada textual y corrige automáticamente algunos errores ortográficos comunes.

2

android:drawableBottom

Este es el dibujable que se dibujará debajo del texto.

3

android:drawableRight

Este es el dibujable que se dibujará a la derecha del texto.

4

android:editable

Si se establece, especifica que este TextView tiene un método de entrada.

5

android:text

Este es el texto para mostrar.

Heredado de android.view.View Clase -

No Señor Atributo y descripción
1

android:background

Este es un dibujo para usar como fondo.

2

android:contentDescription

Esto define el texto que describe brevemente el contenido de la vista.

3

android:id

Esto proporciona un nombre de identificador para esta vista.

4

android:onClick

Este es el nombre del método en el contexto de esta vista para invocar cuando se hace clic en la vista.

5 android:visibility

Esto controla la visibilidad inicial de la vista.

Ejemplo

Este ejemplo lo llevará a través de sencillos pasos para mostrar cómo crear su propia aplicación de Android usando Linear Layout y EditText.

Paso Descripción
1 Utilizará Android Studio IDE para crear una aplicación de Android y nombrarla como demostración en un paquete com.example.demo como se explica en el capítulo Ejemplo de Hello World .
2 Modifique el archivo src / MainActivity.java para agregar un evento de clic.
3 Modifique el contenido predeterminado del archivo res / layout / activity_main.xml para incluir el control de la interfaz de usuario de Android.
4 Defina las constantes de cadena necesarias requeridas en el archivo res / values ​​/ strings.xml
5 Ejecute la aplicación para iniciar el emulador de Android y verifique el resultado de los cambios realizados en la aplicación.

A continuación se muestra el contenido del archivo de actividad principal modificado src/com.example.demo/MainActivity.java. Este archivo puede incluir cada uno de los métodos fundamentales del ciclo de vida.

package com.example.demo;

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

import android.view.View;
import android.view.View.OnClickListener;

import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {
   EditText eText;
   Button btn;
   
   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      eText = (EditText) findViewById(R.id.edittext);
      btn = (Button) findViewById(R.id.button);
      btn.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
            String str = eText.getText().toString();
            Toast msg = Toast.makeText(getBaseContext(),str,Toast.LENGTH_LONG);
            msg.show();
         }
      });
   }
}

A continuación se mostrará el contenido de res/layout/activity_main.xml archivo -

<RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin"
   android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   tools:context=".MainActivity" >
   
   <TextView
      android:id="@+id/textView1"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_alignParentLeft="true"
      android:layout_alignParentTop="true"
      android:layout_marginLeft="14dp"
      android:layout_marginTop="18dp"
      android:text="@string/example_edittext" />
      
   <Button
      android:id="@+id/button"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_alignLeft="@+id/textView1"
      android:layout_below="@+id/textView1"
      android:layout_marginTop="130dp"
      android:text="@string/show_the_text" />
      
   <EditText
      android:id="@+id/edittext"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:layout_alignLeft="@+id/button"
      android:layout_below="@+id/textView1"
      android:layout_marginTop="61dp"
      android:ems="10"
      android:text="@string/enter_text" android:inputType="text" />

</RelativeLayout>

A continuación se mostrará el contenido de res/values/strings.xml para definir estas nuevas constantes -

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <string name="app_name">demo</string>
   <string name="example_edittext">Example showing EditText</string>
   <string name="show_the_text">Show the Text</string>
   <string name="enter_text">text changes</string>
</resources>

A continuación se muestra el contenido predeterminado de AndroidManifest.xml -

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.demo" >
      
   <application
      android:allowBackup="true"
      android:icon="@drawable/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      
      <activity
         android:name="com.example.demo.MainActivity"
         android:label="@string/app_name" >
      
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
      
      </activity>
   </application>
   
</manifest>

Intentemos ejecutar tu demosolicitud. Supongo que habías creado tuAVDmientras realiza la configuración del entorno. Para ejecutar la aplicación desde Android Studio, abra uno de los archivos de actividad de su proyecto y haga clic en el icono Ejecutar de la barra de herramientas. Android Studio instala la aplicación en su AVD y la inicia y, si todo está bien con su configuración y aplicación, se mostrará la siguiente ventana del emulador:

Ejercicio

Recomendaré probar el ejemplo anterior con diferentes atributos de EditText en el archivo XML de diseño, así como en el momento de la programación para tener un aspecto diferente del EditText. Intente hacerlo editable, cambie el color de la fuente, la familia de la fuente, el ancho, el tamaño del texto, etc. y vea el resultado. También puede probar el ejemplo anterior con múltiples controles EditText en una actividad.