Im Augenblick stehe ich vor einem Problem, das ich nicht lösen kann. Es gibt einen Thread, den ich brauche, um zwei Arrays mit spezifischen Daten zu füllen, und diese beiden Arrays später zu verwenden. Mein Haupt-Thread wartet jedoch nicht auf den Thread und ich weiß nicht warum. Hier ist mein CodeDer Haupt-Thread wartet nicht darauf, dass ein anderer Thread die Ausführung beendet
private void loadingData(){
Thread myThread=new Thread(new Runnable() {
@Override
public void run() {
getNationalities();
getReligions();
}
});
myThread.start();
try {
myThread.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
loadingIcon.show();
while(myThread.isAlive()){}
//Here I'm using the two filled arrays
nationalitySpinner();
religionSpinner();
loadingIcon.hide();
}
können Sie mir ein Beispiel geben, wie zu implementieren es? –
@AhmedKhairy, Aktualisierte meine Antwort –
es hat mir Null Pointer Exception und ich weiß nicht, warum ist das, vielleicht sind die Arrays noch nicht gefüllt? aber ich weiß nicht wie, aber ich werde klarer mit dir sein, ich will, dass meine Benutzeroberfläche wartet, bis die Daten gefüllt sind, anstatt vor dem Endbenutzer gefüllt zu werden, verstehst du mich? –