Hallo,
ich spiele ein bisschen gerade mit Java Android entwicklung herum. Wobei der Schwerpunkt meiner Frage reines Java ist.
Leider ist mir aufgefallen, dass ich bei dem Thema einpaar Lücken habe und komme da irgendwie nicht weiter.
Damit meine Anwendung nicht hängt, möchte ich die Daten über einen weiteren Thread besorgen. Leider darf dieser Thread nicht auf das UI zugreifen. Nun muss ich irgendwie wieder auf den richtigen Thread. Welche guten Möglichkeiten habe ich da in Java?
Ich wollte es mit einem Event probieren. Scheinbar funktionieren Events in Java aber so, dass ich meine Listener als List speichere und dann einfach nur die Methoden der Listener aufrufe um das Event auszulösen. D. h. bei dem Thread Problem würde es mir nicht weiterhelfen, da die Events auch im gleichen Thread behandelt werden. Oder sehe ich das falsch?
Vielen Dank und Grüße
ich spiele ein bisschen gerade mit Java Android entwicklung herum. Wobei der Schwerpunkt meiner Frage reines Java ist.
Leider ist mir aufgefallen, dass ich bei dem Thema einpaar Lücken habe und komme da irgendwie nicht weiter.
Damit meine Anwendung nicht hängt, möchte ich die Daten über einen weiteren Thread besorgen. Leider darf dieser Thread nicht auf das UI zugreifen. Nun muss ich irgendwie wieder auf den richtigen Thread. Welche guten Möglichkeiten habe ich da in Java?
Ich wollte es mit einem Event probieren. Scheinbar funktionieren Events in Java aber so, dass ich meine Listener als List speichere und dann einfach nur die Methoden der Listener aufrufe um das Event auszulösen. D. h. bei dem Thread Problem würde es mir nicht weiterhelfen, da die Events auch im gleichen Thread behandelt werden. Oder sehe ich das falsch?
Vielen Dank und Grüße
Code:
public class activityClass extends Activity implements EventListener {
TextView tv;
String abc = "";
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
abc = "";
ImageButton ib = (ImageButton)findViewById(R.id.imageButton1);
tv = ((TextView)(findViewById(R.id.textView1)));
ib.setOnClickListener(new View.OnClickListener(){
public void onClick(View v) {
new Thread(new Runnable() {
public void run() {
try
{
// BufferedReader füllt an dieser Stelle den String abc
}
// catch Blöcke
}
}).start();
}
});
}
...