2017-07-28 1 views
0

Wie kann ich das Feld editText mit einer Schaltfläche aktualisieren, wenn sich die Schaltfläche und die editText in verschiedenen Layouts und Klassen befinden?Text zu EditText in einer anderen Layoutdatei setzen

Ich habe eine mainActivity Klasse und Layout, aber ich möchte diese Funktion zu einer Absicht hinzufügen (durch Klicken auf die Schaltfläche Speichern Update main_activity Layout). Ich habe versucht, indem ich die Methode onClick in der Absichtsklasse anrief, aber das hat nicht funktioniert.

Danach möchte ich zurück zum main_activity Layout gehen. Mein saveDegrees Code ist dies:

public void saveDegrees(View view) { 
    LayoutInflater inflater = getLayoutInflater(); 
    View activityView = inflater.inflate(R.layout.activity_main, null); 
    mCompassEditText = (EditText) activityView.findViewById(
     R.id.compass_edit_text); 
    mCompassEditText.setText(toString().valueOf(currentDegree)); 
} 
+0

Geben Sie eine [mcve] an, die beide Aktivitätsklassen anzeigt und wie Sie jede Aktivität starten. –

Antwort

0

Sie nicht eine Aktivität von einer anderen Aktivität zugreifen können. Stattdessen sollten Sie die Daten zurück an die erste Aktivität senden. Sie können dies tun, indem Sie die zweite Aktivität mit startActivityForResult() statt startActivity() starten. Die zweite Aktivität legt das Ergebnis vor dem Beenden fest. Die erste Aktivität erhält das Ergebnis in onActivityResult() und ändert ihre eigenen Ansichten. Weitere Informationen finden Sie unter How to manage `startActivityForResult` on Android?.

Verwandte Themen