2016-03-21 3 views
0

Ich weiß, dass dies für Sie sehr einfach ist, aber ich möchte der Benutzer einen bestimmten Wert und die Bedeutung dieses Wertes in einer anderen AktivitätWie lasse ich den einen bestimmten Wert eingeben und etwas in einer anderen Tätigkeit erscheinen

ex eingeben : Wenn der Benutzer "1FC3" eingegeben hat, zeigt die zweite Aktivität "Milch"

+0

ein 'HashMap' könnte Ihnen helfen. –

+0

Switch-Anweisung? –

+0

[Aktivität und Absicht (?)] (Http://stackoverflow.com/questions/16260028/whats-the-difference-between-activity-and-intent-in-android) – user2450263

Antwort

0

eine statische Variable in einer von activities.update es mit Ihrer Eingabe dann wenn 2. Aktivität geöffnet erstellt einen Schalter Fall, die die statische Variable

verwenden
public static Sting var; 
TextView tv; 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     tv = findv.... 
     if(var.equals("1FC3")) 
      tv.setText("Milk"); 
} 
0

Nehmen wir an, Sie haben Activity1.j ava: (your MainActivity) Sein XML hat einen EditText und einen Button. Die Schaltfläche hat die ID mybutton und den Bearbeitungstext myedittext. Innerhalb der onCreate-Methode erhalten Sie die Schaltfläche aus dem XML. Wenn Sie auf die Schaltfläche klicken, wird eine neue Aktivität (Activity2.java) mit dem Textwert des Bearbeitungstextes der ersten Aktivität für Ihre neue Aktivität gestartet:

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    final EditText editText = (EditText) findViewById(R.id.myedittext); 
    Button button = (Button) findViewById(R.id.mybutton); 
    button.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Intent intent = new Intent(this, Activity2.class); 
      intent.putExtra("myinput", editText.getText().toString()); 
      startActivity(intent); 

     } 
     }); 


} 

Die Activity2 in seiner XML hat eine TextView mit ID Mytv. nun innerhalb der onCreate der zweiten Aktivität (Activity2.java):

public void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_two); 
    TextView tv = (TextView) findViewById(R.id.mytv); 
    Bundle extras = getIntent().getExtras(); 
    if(extras != null) { 
      if(extras.getString("myinput").equals("1FC3")){ 
       tv.setText("Milk"); 
      } 

    } 


} 
Verwandte Themen