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