Auf Intent warten

  • 25 Antworten
  • Neuester Beitrag
Diskutiere Auf Intent warten im Android App Entwicklung im Bereich Betriebssysteme & Apps.
Chri

Chri

Fortgeschrittenes Mitglied
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
 
S

swordi

Lexikon
sieh dir das thema listener an

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

Chri

Fortgeschrittenes Mitglied
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
 
S

swordi

Lexikon
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.
 
Chri

Chri

Fortgeschrittenes Mitglied
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!!!
 
S

swordi

Lexikon
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.
 
Chri

Chri

Fortgeschrittenes Mitglied
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!
 
Chri

Chri

Fortgeschrittenes Mitglied
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
 
S

Shinigami

Erfahrenes Mitglied
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
 
Chri

Chri

Fortgeschrittenes Mitglied
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!
 
S

swordi

Lexikon
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
 
Chri

Chri

Fortgeschrittenes Mitglied
Werd ich so machen, wenn meine Version mit der Funktion scheitert!;)

Danke mfg Chri
 
S

Shinigami

Erfahrenes Mitglied
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:
S

swordi

Lexikon
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
 
Chri

Chri

Fortgeschrittenes Mitglied
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!!! ;)"
 
Chri

Chri

Fortgeschrittenes Mitglied
Ich bin nicht unbelehrbat! Ich will nur erstmal, dass es funktioniert und dann kann man immer noch verfeinern!!!
 
S

swordi

Lexikon
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 ;)
 
Chri

Chri

Fortgeschrittenes Mitglied
Ich Programmiere schon seit 3 Jahren! Allerding nur C und C++.
Also, ich weiß schon auf was ich aufpassen muss! Danke;)
 
S

swordi

Lexikon
nur nicht selbst überschätzen ;)

wenn du so gut bist, dann müsstest du nicht alles nachfragen. wir helfen aber gerne
 
Ähnliche Themen - Auf Intent warten Antworten Datum
8