2010-09-27 15 views
8

Sto sviluppando un'applicazione in Android con una schermata di accesso. In questo momento sono in grado di ricevere la risposta dal server con successo. Dopo una risposta positiva, dovrei portarmi alla prossima attività o classe in cui visualizzo una nuova schermata/attività. cosa dovrei fare per raggiungere questo obiettivo.Passaggio da un'attività a successiva su Android

risposta

24

In Android si sta utilizzando Intents per passare da un'attività all'altra. In questo caso useresti un Intent esplicito. In questo codice vorrebbe questo:

Intent goToNextActivity = new Intent(getApplicationContext(), YourNewClass.class); 
startActivity(goToNextActivity); 

assicurarsi di aggiungere YourNewClass al manifestarsi come un'altra attività simile a questo:

<activity android:name=".your.package.YourNewClass" /> 

Date un'occhiata più da vicino la documentazione di Intent. Puoi anche leggere il documento su application fundamentals nella documentazione che è un po 'troppo profondo per rispondere a questa domanda, ma ti fornirà approfondimenti sui concetti più importanti di Android.

+0

Grazie! Ho applicato il codice sopra e il suo funzionamento. Passerò anche attraverso i documenti. – Niamathsa

+0

@Niamathsa se la mia risposta ha risolto il tuo problema puoi accettarlo come risposta corretta cliccando sul segno di spunta lasciato dalla risposta. – Janusz

2

Questa attività può essere eseguita utilizzando uno dei blocchi predefiniti principale di Android denominato Intenti e uno dei metodi public void startActivity (Intent intent) appartenente alla classe Attività.

Un intento è una descrizione astratta di un'operazione da eseguire. Può essere utilizzato con startActivity per avviare un'attività, broadcastIntent per inviarlo a qualsiasi componente BroadcastReceiver interessato e startService (Intent) o bindService (Intent, ServiceConnection, int) per comunicare con un servizio in background.

Un intent offre la possibilità di eseguire il binding a runtime tardivo tra il codice in diverse applicazioni. Il suo uso più significativo è il lancio di attività, dove può essere pensato come la colla tra le attività. È fondamentalmente una struttura dati passiva che contiene una descrizione astratta di un'azione da eseguire.

sottoporre la documentazione ufficiale - http://developer.android.com/reference/android/content/Intent.html

public void startActivity (Intent intent) - usato per lanciare una nuova attività.

Così si supponga di avere due classi di attività e OnClickListener() si desidera spostare un pulsante di scatto da un'attività all'altra, allora -

  1. PresentActivity - Questa è la vostra attività in corso da cui si desidera vai alla seconda attività.

  2. NextActivity - Questa è la tua prossima attività su cui vuoi muoverti.

Così l'intento sarebbe stato così

Intent(PresentActivity.this, NextActivity.class) 

Infine questo sarà il codice completo

public class PresentActivity extends Activity { 
     protected void onCreate(Bundle icicle) { 
      super.onCreate(icicle); 

      setContentView(R.layout.content_layout_id); 

      final Button button = (Button) findViewById(R.id.button_id); 
      button.setOnClickListener(new View.OnClickListener() { 
       public void onClick(View v) { 
        // Perform action on click 

        Intent activityChangeIntent = new Intent(PresentActivity.this, NextActivity.class); 

        // currentContext.startActivity(activityChangeIntent); 

        PresentActivity.this.startActivity(activityChangeIntent); 
       } 
      }); 
     } 
    } 

Questa exmple è legata al tasto click è possibile utilizzare il codice da nessuna parte che è scritto all'interno del pulsante clic su OnClickListener() in qualsiasi luogo in cui si desidera passare da una attività all'altra.

0
public void onClick(View arg0) 
{ 
     Intent intent = new Intent(context, App2Activity.class); 
     startActivity(intent); 
}