2010-09-27 3 views
8

Je développe une application dans Android qui a un écran de connexion. En ce moment, je suis en mesure de recevoir la réponse du serveur avec succès. Après une réponse réussie, cela devrait m'amener à la prochaine activité ou classe où j'affiche un nouvel écran/activité. que dois-je faire pour y parvenir?Passer d'une activité à la suivante dans Android

Répondre

24

Dans Android, vous utilisez des intentions pour passer d'une activité à une autre. Dans ce cas, vous utiliserez une intention explicite. Dans le code cela comme ceci:

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

Assurez-vous d'ajouter YourNewClass au manifeste comme une autre activité comme celle-ci:

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

Jetez un oeil à la documentation de Intent. Vous pouvez également lire le document sur application fundamentals dans la documentation, il est un peu trop profond pour répondre à cette question, mais il vous donnera un aperçu des concepts les plus importants d'Android.

+0

Merci! J'ai appliqué le code ci-dessus et son fonctionnement. Je vais aussi passer en revue les docs. – Niamathsa

+0

@Niamathsa Si ma réponse a résolu votre problème, vous pouvez l'accepter comme la bonne réponse en cliquant sur la coche à gauche de la réponse. – Janusz

2

Cette tâche peut être accomplie en utilisant l'un des blocs de construction principaux de l'androïde nommés Intents et l'une des méthodes public void startActivity (Intent intent) qui appartient à votre classe d'activité.

Une intention est une description abstraite d'une opération à effectuer. Il peut être utilisé avec startActivity pour lancer une activité, broadcastIntent pour l'envoyer à tout composant BroadcastReceiver intéressé, et startService (Intent) ou bindService (Intent, ServiceConnection, int) pour communiquer avec un service d'arrière-plan. Un Intent offre une fonction permettant d'effectuer une liaison d'exécution tardive entre le code dans différentes applications. Son utilisation la plus significative est dans le lancement d'activités, où il peut être considéré comme le lien entre les activités. Il s'agit essentiellement d'une structure de données passive contenant une description abstraite d'une action à effectuer.

Consulte la documentation officielle - http://developer.android.com/reference/android/content/Intent.html

public void startActivity (Intent intent) - Utilisé pour lancer une nouvelle activité.

suppose que si vous avez deux classes d'activité et sur OnClickListener() vous déplacez voulez d'un bouton clic d'une activité à une autre, puis -

  1. PresentActivity - Ceci est votre activité actuelle à partir de laquelle vous voulez aller à la deuxième activité.

  2. NextActivity - Il s'agit de votre prochaine activité sur laquelle vous souhaitez déplacer.

Ainsi, l'intention serait comme ce

Intent(PresentActivity.this, NextActivity.class) 

Enfin, ce sera le code complet

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); 
       } 
      }); 
     } 
    } 

Ce exmple est lié à cliquez sur le bouton, vous pouvez utiliser le code partout qui est écrit à l'intérieur du bouton, cliquez sur OnClickListener() à n'importe quel endroit où vous voulez passer entre vos activités.

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