¿Cómo crear una aplicación de Android de convertidor binario a decimal en Android Studio?

Esta aplicación convertirá un número binario en un número decimal . Algunas personas también pueden haber escrito un programa java para convertir un número binario en un número decimal , pero mientras creamos una aplicación, veamos cómo hacerlo. 

Breve recorrido

Comenzaremos creando un nuevo proyecto con una actividad vacía . Después de crear un proyecto, agregaríamos el archivo de recursos dibujables que se usará para dar una forma o contorno de tipo cuadro al EditText . Luego, trabajaríamos con el archivo XML donde agregaríamos dos Edit Texts, botones y TextViews. Al final, iremos a MainActivity.java y crearemos algunas funciones que funcionarán cuando el usuario haga clic en los botones. Tenga en cuenta que vamos a implementar la aplicación utilizando el lenguaje Java . A continuación se proporciona un gif de muestra para tener una idea de lo que vamos a implementar en este artículo.

Implementación paso a paso

Paso 1: crea un nuevo proyecto con una actividad vacía 

Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . Tenga en cuenta que seleccione Java como lenguaje de programación.

Paso 2: agregar un archivo de recursos dibujable

Vaya a app/res/drawable y haga clic con el botón derecho en la carpeta dibujable y vaya a Nuevo/Archivo de recursos dibujable

Nombra el archivo como “ edit_text_border ” (puedes nombrar cualquier cosa según tu deseo, pero ten en cuenta que las letras no deben estar en mayúscula) y con la configuración predeterminada, haz clic en el botón Aceptar.

Paso 3: trabajar con el archivo de recursos dibujables

En el archivo XML del recurso dibujable «edit_text_border.xml», primero definiremos la forma como un rectángulo. Luego agregue un trazo a la forma que hará un contorno alrededor de la forma. Bajo el mismo atributo, especificaremos el ancho y el color del trazo. Finalmente, daremos una forma redonda en las esquinas especificando el radio de las esquinas. Consulte el código XML a continuación para comprender las líneas anteriores:

XML

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
  
    <stroke
        android:width="2dp"
        android:color="@color/gfg_official"/>
  
    <corners
        android:radius="20dp"/>
  
</shape>

Paso 4: trabajar con el archivo activity_main.xml

Navegue a app/res/layout/activity_main.xml y agregue el siguiente código a ese archivo. En el archivo activity_main.xml, tenemos que agregar dos EditText para que se muestre el texto de entrada y salida , dos botones para enviar que enviarán la entrada y borrarán para restablecerla y he agregado dos TextView para mostrar algo de texto para que podamos guiar el usuario sobre cómo usar esta aplicación. A continuación se muestra el código para el archivo  activity_main.xml .

XML

<?xml version="1.0" encoding="utf-8"?>
<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"
    tools:context=".MainActivity">
  
    <EditText
        android:id="@+id/editText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="8dp"
        android:layout_marginTop="200dp"
        android:layout_marginRight="8dp"
        android:background="@drawable/edit_text_border"
        android:digits="01"
        android:hint="Enter a Binary Number"
        android:inputType="numberDecimal"
        android:padding="10dp"
        android:textAlignment="center"
        android:textSize="20sp" />
  
    <Button
        android:id="@+id/submit"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/editText"
        android:layout_centerHorizontal="true"
        android:layout_margin="8dp"
        android:text="Submit"
        android:textAllCaps="false" />
  
    <EditText
        android:id="@+id/output"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/submit"
        android:layout_marginLeft="8dp"
        android:layout_marginTop="40dp"
        android:layout_marginRight="8dp"
        android:background="@drawable/edit_text_border"
        android:hint="Answer will appear here"
        android:padding="10dp"
        android:textAlignment="center"
        android:textSize="20sp" />
  
    <Button
        android:id="@+id/reset"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/output"
        android:layout_centerHorizontal="true"
        android:layout_margin="8dp"
        android:text="Reset"
        android:textAllCaps="false" />
  
    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/reset"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="50dp"
        android:text="⚫ Click on Submit Button after entering a Binary Number"
        android:textSize="15dp" />
  
    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/textView"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="10dp"
        android:text="⚫ Click on Reset Button to reset"
        android:textSize="15dp" />
  
</RelativeLayout>

Después de escribir el código del archivo XML para la aplicación, el diseño se verá así: 

Paso 5: trabajar con el archivo ActivityMain.java

Vaya al archivo MainActivity.java y consulte el siguiente código. Se agregan comentarios dentro del código para comprender el código con más detalle.

Java

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
  
import androidx.appcompat.app.AppCompatActivity;
  
public class MainActivity extends AppCompatActivity {
  
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
  
        // Giving name to the variables for two EditTexts and two Buttons
        // input is where the user will input the decimal number
        // output is where the user will get the output in the form of binary number
        // submit is the button created to submit the decimal number entered by the user
        // clear is the button to clear the answer
        EditText input, output;
        Button submit, reset;
  
        // Calling the EditText by id which we gave in xml file
        input = (EditText) findViewById(R.id.editText);
        output = (EditText) findViewById(R.id.output);
  
        submit = (Button) findViewById(R.id.submit);
  
        // It is set so that when the user clicks on submit button, the data
        // gets send in the function created below which will convert it and then
        // show the answer to the user in the output
        submit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
  
                // Creating a string method argument
                String string = input.getText().toString();
  
                // Here, we are parsing a string method 
                // argument into an integer object
                int i = Integer.parseInt(string, 2);
  
                // Converts and stores it in the form of string
                String decimal = Integer.toString(i);
  
                // It will show the output in the second edit text that we created
                output.setText(decimal);
            }
        });
  
        // Here, we will define a function which will
        // clear the whole text and reset it
        reset = (Button) findViewById(R.id.reset);
        reset.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                input.setText("");
                output.setText("");
            }
        });
  
    }
}

Producción: 

Imagen

Video

Publicación traducida automáticamente

Artículo escrito por kunalmali y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *