Problema con paso de parámetros entre dos activity
Estoy haciendo un convertidor de unidades sencillo (yardas a pies/yardas a centímetros/yardas a metros/viceversa).
Buscando en Internet cómo pasar parámetros entre dos activity, encontré de este sitio http://www.inforjmr.es/?p=111 cómo realizarlo.
Implementé lo que venía en el ejemplo, pero cuando inserto el valor, escojo el tipo de conversión, y doy click en el botón de convertir, no me muestra el resultado en la otra activity.
Chequé las clases donde mando a llamar los métodos y los .xml, pero "aparentemente" todo está bien.
Este es el código que tengo implementado de las activity y los .xml
ActivityMain.java
import android.app.*;
import android.content.Intent;
import android.os.*;
import android.view.*;
import android.widget.*;
public class ActivityMain extends Activity{
private EditText etxt;
private TextView txtViewRes;
private CheckBox chkBoxYarCen, chkBoxCenYar, chkBoxYarMet, chkBoxMetYar, chkBoxYarPie, chkBoxPieYar;
private ConversorMedidas current;
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
initialUISetup();
}
public void initialUISetup(){
etxt=(EditText)findViewById(R.id.etxt);
txtViewRes=(TextView)findViewById(R.id.txtViewRes);
chkBoxYarCen=(CheckBox)findViewById(R.id.chkBoxYarCen);
chkBoxCenYar=(CheckBox)findViewById(R.id.chkBoxCenYar);
chkBoxYarMet=(CheckBox)findViewById(R.id.chkBoxYarMet);
chkBoxMetYar=(CheckBox)findViewById(R.id.chkBoxMetYar);
chkBoxYarPie=(CheckBox)findViewById(R.id.chkBoxYarPie);
chkBoxPieYar=(CheckBox)findViewById(R.id.chkBoxPieYar);
}
public void exchange(View v){
double aux=0;
if(chkBoxYarCen.isChecked()==true){
current=new convYarCen();
aux=current.yardasCentimetros(Double.parseDouble(etxt.getText().toString()));
}
if(chkBoxCenYar.isChecked()==true){
current=new convYarCen();
aux=current.yardasMetros(Double.parseDouble(etxt.getText().toString()));
}
if(chkBoxYarMet.isChecked()==true){
current=new convYarMet();
aux=current.yardasMetros(Double.parseDouble(etxt.getText().toString()));
}
if(chkBoxMetYar.isChecked()==true){
current=new convYarMet();
aux=current.yardasCentimetros(Double.parseDouble(etxt.getText().toString()));
}
if(chkBoxYarPie.isChecked()==true){
current=new convYarPie();
aux=current.yardasCentimetros(Double.parseDouble(etxt.getText().toString()));
}
if(chkBoxPieYar.isChecked()==true){
current=new convYarPie();
aux=current.yardasMetros(Double.parseDouble(etxt.getText().toString()));
}
txtViewRes.setText(String.valueOf(aux));
}
//http://www.inforjmr.es/?p=111
//Primero Dios
String contenido;
public void showSecondActivity(View v){
contenido=txtViewRes.getText().toString();
Intent i=new Intent(this, ResultadoActivity.class);
i.putExtra("resultado", contenido);
startActivity(i);
}
}
ResultadoActivity.java
import android.app.Activity;
import android.os.*;
import android.widget.*;
public class ResultadoActivity extends Activity{
TextView tvDatosRecibidos;
String cadena;
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.resultado);
tvDatosRecibidos=(TextView)findViewById(R.id.tvDatosRecibidos);
Bundle recogerDatos=getIntent().getExtras();
cadena=recogerDatos.getString("resultado");
tvDatosRecibidos.setText(cadena);
}
}
main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="This is the second activity" />
<TextView
android:id="@+id/txtViewData"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Input Data"
/>
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/etxt"><requestFocus></requestFocus>
</EditText>
<!--
chkBoxYarCen, chkBoxCenYar, chkBoxYarMet, chkBoxMetYar, chkBoxYarPie, chkBoxPieYar;
-->
<CheckBox
android:id="@+id/chkBoxYarCen"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Yards to Centimetres"
/>
<CheckBox
android:id="@+id/chkBoxCenYar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Centimetres to Yards"
/>
<CheckBox
android:id="@+id/chkBoxYarMet"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Yards to Metres"
/>
<CheckBox
android:id="@+id/chkBoxMetYar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Foot to Yards"
/>
<CheckBox
android:id="@+id/chkBoxYarPie"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Yards to Foots"
/>
<CheckBox
android:id="@+id/chkBoxPieYar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Foots to Yards"
/>
<!-- Botones -->
<Button
android:id="@+id/btnOpe"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Convert"
android:onClick="exchange"
/>
<TextView
android:id="@+id/txtViewRes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Result"
/>
</LinearLayout>
resultado.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Datos recibidos de la actividad anterior"
/>
<TextView
android:id="@+id/tvDatosRecibidos"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
AndroidManifest.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Datos recibidos de la actividad anterior"
/>
<TextView
android:id="@+id/tvDatosRecibidos"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
De antemano muchas gracias y disculpen el inconveniente.
P. D.: no es tarea o algo parecido, es por hobbie. Soy principiante en programación de dispositivos móviles.
- Inicie sesión o regístrese para enviar comentarios
AndroidManifest.xml
Te has equivocado en el código del archivo AndroidManifest.xml. ¿Qué es lo que sucede? ¿Si pasa de una actividad a otra pero no se muestra el dato compartido?
No
No pasa de una actividad a otra y creo que tampoco está pasando el dato al segundo activity