2012-02-22 3 views
0

Bien qu'il existe de nombreux exemples de ce problème sur ce forum, je ne trouve toujours pas l'endroit approprié pour commencer une nouvelle activité.Je ne sais pas où ajouter une nouvelle activité

Heres mon code:

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.screen1); 

    final EditText milein = (EditText) findViewById(R.id.milein); 
    final EditText zipin = (EditText) findViewById(R.id.zipin); 
    final EditText mileout = (EditText) findViewById(R.id.mileout); 
    final EditText zipout = (EditText) findViewById(R.id.zipout); 
    final ToggleButton checkinbutton = (ToggleButton) findViewById(R.id.checkinbutton); 
    final Button submit = (Button) findViewById(R.id.submit); 

    /** Boolean for Sharedpreferences */ 
    final SharedPreferences preferences = getPreferences(MODE_PRIVATE); 
    boolean tgpref = preferences.getBoolean("tgpref", false); 
    checkinbutton.setChecked(tgpref); 

    /** ToggleButton Check-IN */ 
    checkinbutton.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 

      if (checkinbutton.isChecked()) { 
       milein.setVisibility(View.VISIBLE); 
       zipin.setVisibility(View.VISIBLE); 
       mileout.setVisibility(View.GONE); 
       zipout.setVisibility(View.GONE); 
       submit.setVisibility(View.VISIBLE); 
       SharedPreferences.Editor editor = preferences.edit(); 
       /** 
       * <-- Boolean Preferences for Checkinbutton ToggleButton 
       * Checked 
       */ 
       editor.putBoolean("tgpref", true); 
       editor.commit(); 

      } else { 

       milein.setVisibility(View.GONE); 
       zipin.setVisibility(View.GONE); 
       mileout.setVisibility(View.VISIBLE); 
       zipout.setVisibility(View.VISIBLE); 
       submit.setVisibility(View.VISIBLE); 
       SharedPreferences.Editor editor = preferences.edit(); 
       /** 
       * <-- Boolean Preferences for Checkinbutton ToggleButton 
       * UnChecked 
       */ 
       editor.putBoolean("tgpref", false); 
       editor.commit(); 

       /** AlertDialog Button Configurations */ 

       final AlertDialog alertDialog = new AlertDialog.Builder(
         screen1.this).create(); 
       alertDialog.setMessage("Check-Out?"); 
       alertDialog.setButton("Yes", 
         new DialogInterface.OnClickListener() { 
          public void onClick(DialogInterface dialog, 
            int which) { 
          } 

         }); 
       alertDialog.setButton2("No", 
         new DialogInterface.OnClickListener() { 
          public void onClick(DialogInterface dialog, 
            int which) { 
           checkinbutton.setChecked(true); 
           milein.setVisibility(View.VISIBLE); 
           zipin.setVisibility(View.VISIBLE); 
           mileout.setVisibility(View.GONE); 
           zipout.setVisibility(View.GONE); 
          } 
         }); 
       alertDialog.show(); 
      } 
     }; 
    }); 
} 


public void onClick(View v) { 

    } 

} 

Ive a essayé de mettre en œuvre une nouvelle activité d'écran un peu partout mais ne peux pas obtenir tout à fait. toute aide sur suggérer où il devrait aller serait très apprécié.

Merci.

+0

Pouvez-vous s'il vous plaît nous donner un peu plus d'informations sur votre problème. Que se passe-t-il lorsque vous exécutez votre application? Avez-vous ajouté votre activité à votre AndroidManifest? Avez-vous mis en place une activité de lancement? – bschultz

+0

Oui, j'ai ajouté mon activité dans le manifeste. Je sais que l'activité est valide parce que, pendant que j'expérimentais sur où implémenter la nouvelle activité, je remarque que le ToggleButton m'envoie à la nouvelle activité, parfois. Cependant, je ne veux pas que la nouvelle activité démarre quand j'appuie sur le bouton bascule, je veux que la nouvelle activité s'ouvre quand j'appuie sur le "bouton d'état" (bouton d'état non montré dans le code fourni) , où dois-je ajouter le "bouton d'état" pour démarrer la nouvelle activité? –

Répondre

0

Je suppose que vous souhaitez modifier les activités à la fin de vos méthodes onClick. Vous voudrez en inclure deux, un à la fin de chaque conditionnelle dans votre méthode onClick.

A la fin de l'état, il suffit d'ajouter ce code:

startActivity(new Intent(CurrentActivity.this, NewActivity.class)); 
CurrentActivity.this.finish(); 

Aussi, assurez-vous que vous ajoutez une nouvelle activité à votre fichier Manifest:

<activity 
    android:name=".NewActivity" 
    android:label="@string/newActivityTitle" > 
</activity> 

Une fois que votre code arrive à la Si la nouvelle activité est configurée correctement, la nouvelle activité devrait prendre le relais.

db

+0

Vous êtes très proche de m'aider, cybler. Ce que je veux dire est, dans ma mise en page, j'ai deux boutons, un ToggleButton, et un bouton. Je veux que le bouton exécute la nouvelle activité. J'ai essayé \t \t statusbutton.setOnClickListener (this); StartActivity (new Intent (screen1.this, statuspage.class)) \t \t \t screen1.this.finish(); Je ne sais pas où il devrait aller –

+0

Je viens de le comprendre. Ça m'a pris environ 3 heures et maintenant je me suis rendu compte à quel point c'était stupide. Les questions les plus difficiles sont parfois les réponses les plus évidentes. –

Questions connexes