Auf Intent warten

Chri

Chri

Fortgeschrittenes Mitglied
0
Hallo Leute!

Bin wieder mal auf ein großes Problem gestoßen!
Wie ihr in meinen zuvor veröffentlichen Themen lesen könnt, habe ich einen TabView. In einem Tab, hole ich mir Daten aus dem Netz und speichere diese in einem Speicher. Nun möchte ich in einem anderen Tab die Daten wieder auslesen. Dies geht natürliche erst dann, wenn der Netzwerktab die Daten gespeichert hat!
Also soll der Empfangs- Tab solange warten, bis ich mit einem Indicator, der per Intent an den Empfangstab übergeben wird, signalisiere, dass die Daten emfangen wurden!

Wie mache ich das? Bitte um Hilfe!

mfg Chri
 
sieh dir das thema listener an

kannst dir deinen eigenen listener bauen, der dann benachrichtigt, wenn die daten geladen sind.
 
swordi schrieb:
sieh dir das thema listener an

kannst dir deinen eigenen listener bauen, der dann benachrichtigt, wenn die daten geladen sind.

swordi, es wäre hilfreich, wenn du kleine Bsp. zu deinen Antworten geben könntest! Die helfen meistens gleich mehr!;)

mfg Chri
 
sei nicht zu faul um dir bei google etwas zu suchen.

dazu gibt es unzählige einträge. die helfen dir mehr, als ein paar source code zeilen von mir einfach so aus dem kopf

eine klasse anlegen, die ein listener ist. dort die methoden überschreiben. den listener an das gewünschte objekt anhängen und sobald fertig geladen ist, einfach eine notification losschicken.

google wird dir den weg schon zeigen.
 
swordi schrieb:
sei nicht zu faul um dir bei google etwas zu suchen.

dazu gibt es unzählige einträge. die helfen dir mehr, als ein paar source code zeilen von mir einfach so aus dem kopf

eine klasse anlegen, die ein listener ist. dort die methoden überschreiben. den listener an das gewünschte objekt anhängen und sobald fertig geladen ist, einfach eine notification losschicken.

google wird dir den weg schon zeigen.

Ich schreibe in dieses Forum, damit mir geholfen wird, und nicht dass jemand sagt, dass ich das bei google finde! Wesswegen gibt es sonst Foren?!
Ich habe schon bei google gesucht, nur nichts gefunden, wo ich mich ausgekannt hätte! Bin eben noch ein Anfänger!!!
 
du kannst nicht erwarten, dass wir hier für dich den source code einfach so aus dem kopf hinschreiben.

du fragst nach etwas, wir geben dir stichwörter und dann kannst du suchen. sorry aber ich habe keinen zugriff im büro auf meinen privaten source code und kann es nicht einfach so aus dem kopf für dich hinschreiben, damit du es nur noch kopieren brauchst.

gerade anfänger müssen vermehrt versuchen sich damit selbst auseinander zusetzen. was nützt es dir wenn du jetzt hier die fertige lösung präsentiert bekommst und dabei rein gar nichts lernst.

die stichwörter oben bringen dich auf jeden fall weiter. wenn nicht, solltest du dir ein java grundlagen buch kaufen und dich zuerst mit den sprachkonstrukten auseinander setzen.
 
swordi schrieb:
du kannst nicht erwarten, dass wir hier für dich den source code einfach so aus dem kopf hinschreiben.

du fragst nach etwas, wir geben dir stichwörter und dann kannst du suchen. sorry aber ich habe keinen zugriff im büro auf meinen privaten source code und kann es nicht einfach so aus dem kopf für dich hinschreiben, damit du es nur noch kopieren brauchst.

gerade anfänger müssen vermehrt versuchen sich damit selbst auseinander zusetzen. was nützt es dir wenn du jetzt hier die fertige lösung präsentiert bekommst und dabei rein gar nichts lernst.

die stichwörter oben bringen dich auf jeden fall weiter. wenn nicht, solltest du dir ein java grundlagen buch kaufen und dich zuerst mit den sprachkonstrukten auseinander setzen.

Es redet ja keiner von einem vollständigen Programm!!!
Aber es hebt das Verständnis um einiges, wenn man ein paar Sourcecodezeilen ließt!
 
Ich hätte auch noch eine Idee, wie ich den Listener umgehen könnte! Aber aus irgendeinen Grund funktioniert es nicht so, wie ich will:(!

Und zwar würde ich meine Aktivity einfach aufrufen, wenn ich den Butten drücke. Nur schreibt der Kompiler einen Fehler, wenn in der .setOnClickListener() Funktion ein Inten mit Inhalt (this,Klassenname.class)
definieren will. ich kann nur ein Intent mit leerem Konstruktor defininieren:
Intent i = new Intent();

kann mir wer helfen?

mfg Chri
 
Hallo mal wieder,

Du hälst uns ja ganz schön auf Trab :p

Bevor ich was zum Thema sage: Ich muss swordi bepflichten. Es ist nicht Sinn und Zweck von Foren, andere die Arbeit machen zu lassen. Meines Erachtens kann man wegweisende Tipps (wie z.B. der von swordi bzgl der Listener) erwarten, was auch in Deinem Sinne sein sollte. Programmieren ist gerade am Anfang nun mal schwierig und nur learning-by-doing bringt's - nicht learning-by-copying. Find aber auch nachwievor super, dass Du dran bleibst.

BTT:
Wie hast Du denn den onClickListener implementiert? Zeig mal bitte den setOnClickListener()-Aufruf vollständig.

Gruß,
Shini
 
Shinigami schrieb:
Hallo mal wieder,

Du hälst uns ja ganz schön auf Trab :p

Bevor ich was zum Thema sage: Ich muss swordi bepflichten. Es ist nicht Sinn und Zweck von Foren, andere die Arbeit machen zu lassen. Meines Erachtens kann man wegweisende Tipps (wie z.B. der von swordi bzgl der Listener) erwarten, was auch in Deinem Sinne sein sollte. Programmieren ist gerade am Anfang nun mal schwierig und nur learning-by-doing bringt's - nicht learning-by-copying. Find aber auch nachwievor super, dass Du dran bleibst.

BTT:
Wie hast Du denn den onClickListener implementiert? Zeig mal bitte den setOnClickListener()-Aufruf vollständig.

Gruß,
Shini

Ich tu, was ich kann!:)

m_bTickets.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
});

PS: Versuche das Problem gerade zu beheben, indem ich die Activity in einer Funktion aufrufe und diese Funktion wiederum im OnCllickListener!
Das scheint zur zeit noch zu funktionieren!
 
der onclicklistener ist eigentlich etwas eigenständiges. du legst das Object hier direkt an, deshalb kannst auch nicht auf startActivity() oder so zugreifen.

du musst eine eigene klasse haben, die den OnclickListener implementiert und dieser einfach deinen Context mitgeben.

public MyOnclickListener implements View.OnclickListener {
private Activity activity;
public MyOnclickListener(Activity act) {
activity = act;
}
@override
onclick() {
activity.startActivity...
}
}

so würds gehen
 
Werd ich so machen, wenn meine Version mit der Funktion scheitert!;)

Danke mfg Chri
 
m_bTickets.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
});
In dieser onClick-Methode kannst Du new Intent(this, Klasse.class) nicht verwenden weil die Referenz this vom falschen Typ wäre, m.M.n.

Noch eine Variante, die der von swordi ähnelt: Deine Klasse, in der Du den OnClickListener benötigst implementiert View.OnClickListener und Du implementiest dann in der Klasse die onClick-Methode. Dann kann man mit setOnClickListener(this) den Listener setzen. Man hat so in der onClick-Methode sämtliche Methoden der Klasse zur Verfügung...

Willst Du mit dem Aufruf den Tab wechseln? *dummfrag*

Gruß
 
Zuletzt bearbeitet:
ja funktioniert, ist aber nicht so schön, wenn es umfangreicher wird. dann hat man x methoden implementiert und findet sich nicht mehr zurecht.

aber funktionieren würd es auf jeden fall

nur ich sag mal: gleich anständig lernen, dann hat man es später leichter
 
swordi schrieb:
ja funktioniert, ist aber nicht so schön, wenn es umfangreicher wird. dann hat man x methoden implementiert und findet sich nicht mehr zurecht.

aber funktionieren würd es auf jeden fall

nur ich sag mal: gleich anständig lernen, dann hat man es später leichter

Und ich sag nur:"Besser unübersichtlich und funktioniern als gar nicht funktionieren!!! ;)"
 
Ich bin nicht unbelehrbat! Ich will nur erstmal, dass es funktioniert und dann kann man immer noch verfeinern!!!
 
wenn du dir spagetti code programmieren lernst, dann bekommst es nie mehr weg

ist leider so. entweder man lernt es anständig oder gar nicht. gibt genug schlechte programmierer auf der welt. glaub da muss man nicht noch einen anlernen ;)
 
Ich Programmiere schon seit 3 Jahren! Allerding nur C und C++.
Also, ich weiß schon auf was ich aufpassen muss! Danke;)
 
nur nicht selbst überschätzen ;)

wenn du so gut bist, dann müsstest du nicht alles nachfragen. wir helfen aber gerne
 

Ähnliche Themen

B
Antworten
4
Aufrufe
430
bb321
B
M
Antworten
4
Aufrufe
1.147
swa00
swa00
Zurück
Oben Unten