MainActivity.java
1 2 3 4 5 6 7 8 91011121314151617181920212223242526272829303132333435363738 | import android.app.Activity;import android.os.Bundle;import android.view.Menu;import android.view.View;import android.widget.EditText;public class MainActivity extends Activity { private EditText et1; private EditText et2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et1=(EditText)findViewById(R.id.et1); et2=(EditText)findViewById(R.id.et2); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } public void ImpTabla(View v){ String numero1 = et1.getText().toString(); int numero2 = Integer.parseInt(numero1); String result2 = ""; for(int i = 1; i = 12; i++){ int result1 = i * numero2; result2 += i+ " x " + numero1 + " = " + String.valueOf(result1) + '\n'; } et2.setText(result2); }} |
Inicialmenteasociamos nuestras variables et1 y et2 del tipo EditText a los controles EditText creados en el xml.
et1=(EditText)findViewById(R.id.et1);
et2=(EditText)findViewById(R.id.et2);
Luego el métodoImpTabla se encargará de realizar las operaciones necesarias e imprimir la salida en elcontrol EditText.
Se debe recordar que cuando tomamos un dato que hemos escrito en un control EditText éste dato es del tipo String, por ello debemos almacenarlo en una variable de éste mismo tipo de dato y luego convertirla en un entero.
String numero1= et1.getText().toString();
int numero2= Integer.parseInt(numero1);
Las 2 lineas anteriores muestran lo antes mencionado. Se almacena el dato en la variable numero 1 que es de tipo string y luego es transformada en tipo entero y almacenada en la variable numero2.
El ciclo for empezará desde 1 debido a que la tabla de multiplicar irá desde 1 hasta 12.
int result1 = i * numero2;
La variable result1 almacena las operaciones para luego imprimir el resultado es decir: 1 * 5 = 5, 2 * 5 = 10 ... 12 * 5 = 60.
Y finalmente
result2 += i+ " x " + numero1 + " = " + String.valueOf(result1) + '\n';
Almacena todos los resultados en la variable result 2concatenandolos con el operador+= y'\n'se encargará de separar las operaciones y los resultados con un salto de linea.
activity_main.xml
1 2 3 4 5 6 7 8 91011121314151617181920212223242526272829303132333435363738394041424344454647484950 | 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/tv1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:text="¿Que tabla de multiplicar deseas saber?" / EditText android:id="@+id/et1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/tv1" android:layout_marginTop="22dp" android:ems="10" requestFocus / /EditText Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/et1" android:onClick="ImpTabla" android:text="Aceptar" / EditText android:id="@+id/et2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/button1" android:layout_marginTop="21dp" android:ems="10" android:inputType="textMultiLine" //RelativeLayout |
En el control Button es
importante definir lapropiedad
onclick del botón, ésta se encargará de activar el método
ImpTablacuando pulsemos el botón mientras nuestra aplicación se esté ejecutando.
android:onClick="ImpTabla"
Entre comillas debe ir el nombre del método que deseamos activar al pulsar el botón.