Ich bin erneut auf ein großes Problem gestoßen, wo ich nicht mehr weiter weiß. Ich habe aus Firestore ein String geholt, diesen möchte aus onEvent holen und ihn in einen normalen String, der immer ganz oben in der Klasse steht laden bzw. ersetzen. Zur Überprüfung habe ich ein Toast in onEvent geschrieben und habe den rausgeholten String anzeigen lassen. Das hat auch funktioniert und konnte den String in der Datenbank lesen. sobald ich den Toast außerhalb des onEvent schreibe, wird kein Text angezeigt, da der String nicht raus aus dem onEvent kommt und in den String schreibt.
Ich möchte ja mit den Strings, die ich raushole auch arbeiten wollen.
Wie bekomme ich es aus dem onEvent heraus, wo es im Class String steht?
Hier der Code:
[CODE lang="java" title="Wo der String niocht angezeigt wird...."]
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.firestore.DocumentReference;
import com.google.firebase.firestore.DocumentSnapshot;
import com.google.firebase.firestore.EventListener;
import com.google.firebase.firestore.FirebaseFirestore;
import com.google.firebase.firestore.FirebaseFirestoreException;
public class home extends AppCompatActivity {
ImageButton ibtn;
Button btn;
ImageView view;
TextView texthex;
FirebaseFirestore fStore;
String easteregg_lösung;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
fStore = FirebaseFirestore.getInstance();
DocumentReference documentReference = fStore.collection("Lösung").document("2021");
documentReference.addSnapshotListener(this, new EventListener<DocumentSnapshot>() {
@Override
public void onEvent(@Nullable DocumentSnapshot value, @Nullable FirebaseFirestoreException error) {
easteregg_lösung = (String) value.getString("2021");
}
});
Toast.makeText(getApplicationContext(), easteregg_lösung, Toast.LENGTH_SHORT).show();
}
}[/CODE]
Und jetzt, wo der String erfolgreich angezeigt wird, was aus der Datenbank geholt wurden ist....
[CODE lang="java" title="Ihr wird der Text angezeigt..." highlight="84"]
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.firestore.DocumentReference;
import com.google.firebase.firestore.DocumentSnapshot;
import com.google.firebase.firestore.EventListener;
import com.google.firebase.firestore.FirebaseFirestore;
import com.google.firebase.firestore.FirebaseFirestoreException;
public class home extends AppCompatActivity {
ImageButton ibtn;
Button btn;
ImageView view;
TextView texthex;
FirebaseFirestore fStore;
String easteregg_lösung;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
fStore = FirebaseFirestore.getInstance();
DocumentReference documentReference = fStore.collection("Lösung").document("2021");
documentReference.addSnapshotListener(this, new EventListener<DocumentSnapshot>() {
@Override
public void onEvent(@Nullable DocumentSnapshot value, @Nullable FirebaseFirestoreException error) {
easteregg_lösung = (String) value.getString("2021");
Toast.makeText(getApplicationContext(), easteregg_lösung, Toast.LENGTH_SHORT).show();
}
});
}
}[/CODE]
Es wäre schön, wenn ihr es hinbekommt, das ich mit den Strings weiter arbeiten kann.
Ich danke euch im Vorraus!
Ich möchte ja mit den Strings, die ich raushole auch arbeiten wollen.
Wie bekomme ich es aus dem onEvent heraus, wo es im Class String steht?
Hier der Code:
[CODE lang="java" title="Wo der String niocht angezeigt wird...."]
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.firestore.DocumentReference;
import com.google.firebase.firestore.DocumentSnapshot;
import com.google.firebase.firestore.EventListener;
import com.google.firebase.firestore.FirebaseFirestore;
import com.google.firebase.firestore.FirebaseFirestoreException;
public class home extends AppCompatActivity {
ImageButton ibtn;
Button btn;
ImageView view;
TextView texthex;
FirebaseFirestore fStore;
String easteregg_lösung;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
fStore = FirebaseFirestore.getInstance();
DocumentReference documentReference = fStore.collection("Lösung").document("2021");
documentReference.addSnapshotListener(this, new EventListener<DocumentSnapshot>() {
@Override
public void onEvent(@Nullable DocumentSnapshot value, @Nullable FirebaseFirestoreException error) {
easteregg_lösung = (String) value.getString("2021");
}
});
Toast.makeText(getApplicationContext(), easteregg_lösung, Toast.LENGTH_SHORT).show();
}
}[/CODE]
Und jetzt, wo der String erfolgreich angezeigt wird, was aus der Datenbank geholt wurden ist....
[CODE lang="java" title="Ihr wird der Text angezeigt..." highlight="84"]
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.firestore.DocumentReference;
import com.google.firebase.firestore.DocumentSnapshot;
import com.google.firebase.firestore.EventListener;
import com.google.firebase.firestore.FirebaseFirestore;
import com.google.firebase.firestore.FirebaseFirestoreException;
public class home extends AppCompatActivity {
ImageButton ibtn;
Button btn;
ImageView view;
TextView texthex;
FirebaseFirestore fStore;
String easteregg_lösung;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
fStore = FirebaseFirestore.getInstance();
DocumentReference documentReference = fStore.collection("Lösung").document("2021");
documentReference.addSnapshotListener(this, new EventListener<DocumentSnapshot>() {
@Override
public void onEvent(@Nullable DocumentSnapshot value, @Nullable FirebaseFirestoreException error) {
easteregg_lösung = (String) value.getString("2021");
Toast.makeText(getApplicationContext(), easteregg_lösung, Toast.LENGTH_SHORT).show();
}
});
}
}[/CODE]
Es wäre schön, wenn ihr es hinbekommt, das ich mit den Strings weiter arbeiten kann.
Ich danke euch im Vorraus!