2012-03-31 6 views
0

Ich habe eine "Login" XML im Layout. Und ich habe ein anderes XML ist die "Liste".Übergeben Sie den Textwert zwischen zwei xml

In meiner Anwendung loggen sich die Benutzer in die Anwendung mit E-Mail-Adresse und Passwort ein, als ihre Mail-Liste anzuzeigen. Ich habe es so gemacht:

 public void onCreate(Bundle savedInstanceState) 
      { 
      super.onCreate(savedInstanceState); 
      // setContentView(R.layout.main); 
      LoginScreen(); 
      } 

// I am receiving the email and password on the main layout for login page 
     public void LoginScreen() 
      { 
      setContentView(R.layout.main); 
      EditText emailTxt = (EditText) findViewById(R.id.txtMail); 
      EditText passwordTxt = (EditText) findViewById(R.id.txtPassword); 
      String email= epostaTxt.getText().toString(); 
     String password = parolaTxt.getText().toString(); 
// After receive, call the MailList() for connection and getting the list 
      MailList() 
      } 

// and I use this email and password again into the MailList() for connection with server then receive the mail list 

     public void MailList() 
      { 
      setContentView(R.layout.list); 
      EditText emailTxt = (EditText) findViewById(R.id.txtMail); 
      EditText passwordTxt = (EditText)              findViewById(R.id.txtPassword); 
      String email= epostaTxt.getText().toString(); 
     String password = parolaTxt.getText().toString(); 
      Sending emain and password to the server etc... 
      } 

Dies nur für jetzt, aber diese Codewiederholung wird fortgesetzt. Ich möchte diese E-Mail und das Passwort nur einmal von Editxt erhalten und alle Methoden verwenden. Und dieser Code funktioniert auch nicht, Maillist zeigt die Liste nicht, weil keine Verbindung hergestellt werden kann

Wie kann ich das tun? Jede Antwort wäre willkommen.

[EDIT] Es ist mit globalen Variablen zu statischen Variablen gelöst.

Antwort

0

Wenn ich es gut unterstand, möchten Sie einfach Daten zwischen Ihrem Aktivitäten passieren, hier könnte etwas Hilfe sein: In Android: How do I get variables/data from one screen to another?

EDIT: Meine neue Antwort, hoffe, es ist das gute: einfach zwei Variablen erstellen zu speichern das Datum?

public class LoginScreen extends Activity{ 

private String email; 
private String password; 

    public void onCreate(Bundle savedInstanceState) 
     { 
     super.onCreate(savedInstanceState); 
     // setContentView(R.layout.main); 
     LoginScreen(); 
     } 

    // I am receiving the email and password on the main layout for login page 
    public void LoginScreen() 
     { 
     setContentView(R.layout.main); 
     EditText emailTxt = (EditText) findViewById(R.id.txtMail); 
     EditText passwordTxt = (EditText) findViewById(R.id.txtPassword); 
     email= emailTxt.getText().toString(); 
     password = passwordTxt.getText().toString(); 
     // After receive, call the MailList() for connection and getting the list 
     MailList() 
     } 

    // and I use this email and password again into the MailList() for connection with server then receive the mail list 
    public void MailList() 
     { 
     setContentView(R.layout.list); 

     //Sending emain and password to the server etc... 
     //just use the email and password stored above 
     yourFunctionToSend(email,password); 
     } 
} 
+0

Fast korrekt. Dies sind nicht meine Aktivitäten tatsächlich gibt es nur eine Aktivitätsklasse für "Main" XML, die die Anmeldeseite ist. Und die "Liste" XML für Maillist() und es ist keine Aktivität, es ist nur ein XML. Ich möchte Daten zwischen main.xml und list.xml übergeben – Merve

+0

Ich habe es versucht, aber es funktioniert nicht mit globalen Variablen – Merve

0
  String email; 
      String password; 
     public void onCreate(Bundle savedInstanceState) 
      { 
       super.onCreate(savedInstanceState); 
       // setContentView(R.layout.main); 
       loginScreen(); 
      } 
     public boolean loginScreen() throws MessagingException 
      { 
       EditText emailTxt = (EditText) findViewById(R.id.txtEmail); 
       EditText passwordTxt = (EditText) findViewById(R.id.txtPassword); 
         String email = emailTxt.getText().toString(); 
       String password = passwordTxt.getText().toString(); 
         mailList(); 
       } 
     public void mailList() 
       { 
    arrayAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_multiple_choice, 
connection.MailListCon(email, password)); 
    list.setAdapter(arrayAdapter); 
       } 

I verwendet werden, sind globale Variablen für den Datenprozess durchzulassen, aber in der Mail-Liste() -Methode E-Mail und Passwort Variablen null. Aber im loginScreen() nehmen sie die echte E-Mail und das Passwort.

Verwandte Themen