2011-11-16 23 views
5

Estoy creando una aplicación de información para Android y no puedo encontrar la manera de cambiar un botón según el botón que se presionó en una clase anterior.Mostrar información según el botón que se presionó

Hice esta foto que muestra cómo funciona la aplicación:

Flowchart

Después de hacer clic en el primer botón se llega a una nueva clase con 2 nuevos botones que le envía a la misma clase, pero los 3 botones se supone que cambia dependiendo de cuál de los dos botones presionó, los tres botones a los que se envía lo envía a la misma clase, pero hay un TextView que cambia el texto según el botón que presionó.

Así que necesito agregar algún tipo de información al botón (¿una intención?) Para que sepa lo que presionó anteriormente.

Soy un poco nuevo en Java y Android, así que lamento haberlo explicado de una manera extraña.

Gracias de antemano

+1

¡Bienvenido a Stackoverflow! Si encuentra que una respuesta es útil, vote por favor. Si la respuesta responde satisfactoriamente a su pregunta, haga clic en la marca de verificación verde al lado para aceptar la respuesta. También mire http://stackoverflow.com/questions/how-to-ask para obtener consejos sobre cómo escribir una buena pregunta –

Respuesta

3

cada vez que inicia una nueva actividad, pero algunos extras en ese intento decir la siguiente actividad lo que los botones deben mostrar. En la siguiente actividad, lea los extras de la intención que obtuvo, y programe programáticamente el texto de sus botones en consecuencia.

Aquí hay un código de psuedo.

public class FirstActivity extends Activity{ 

    //setup button 1 and two first, then set their onClickLiseners like so 

    View.OnClickListener clickListener = new View.OnClickListener(){ 
     public void onClick(View view){ 
     Intent newActivity = new Intent(FirstActivity.this, SecondActivity.class); 
     if(view == button1){ 
      //add extra to intent indicating button1 was clicked 
     } 
     else{ 
      //add extra to intent indicating button2 was clicked 
     } 
     startActivity(newActivity); 
     } 
    }; 


    // other stuff in your activity 
} 


public class SecondActivity extends Activity{ 

    protected void onCreate(Bundle icicle){ 
    Intent startedBy = getIntent(); 
    if(started by has the extra indicating button 1 was clicked){ 
     //do button1 stuff 
    } 
    else{ 
     //do button2 stuff 
    } 
    } 
} 


} 
Cuestiones relacionadas