es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Android Studio Cambiando un TextView usando un botón.

Quiero cambiar el texto en el mensaje cuando se hace clic en el botón a “¡Hola Mundo!”. La idea sería que usaría un método para cambiar el texto de un TextView en blanco a uno que tenga escritura.

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.constraintlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity">

    <textview android:id="@+id/message" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="¡Hola Mundo!" app:layout_constraintbottom_tobottomof="parent" app:layout_constraintleft_toleftof="parent" app:layout_constraintright_torightof="parent" app:layout_constrainttop_totopof="parent"></textview>

    <button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onclick="sendMessage" android:text="Botón" tools:layout_editor_absolutex="158dp" tools:layout_editor_absolutey="282dp"></button>
</androidx.constraintlayout.widget.constraintlayout>

MainActivity.java

package com.example.clickmeapp;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    public void sendMessage(View message){
        message.text="¡Hola Mundo!";
    }
}

Cualquier ayuda para resolver este problema sería asombrosa.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para cambiar el texto en el message TextView cuando se hace clic en el botón, debes modificar el método sendMessage en el archivo MainActivity.java de la siguiente manera:

    public void sendMessage(View view){
        TextView message = findViewById(R.id.message);
        message.setText("¡Hola Mundo!");
    }
    

    Aquí, primero obtenemos una referencia al message TextView utilizando findViewById. Luego, usamos el método setText para establecer su texto como “¡Hola Mundo!”.

    Finalmente, asegúrate de que el atributo android:onClick del Button en tu archivo activity_main.xml esté configurado como “sendMessage”:

    <button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Botón" android:onclick="sendMessage" app:layout_constraintbottom_tobottomof="parent" app:layout_constraintend_toendof="parent" app:layout_constraintstart_tostartof="parent" app:layout_constrainttop_totopof="parent"></button>
    

    Ahora, cuando se hace clic en el botón, el texto en el message TextView cambiará a “¡Hola Mundo!”.

Comments are closed.