Array an andere Methode übergeben

  • 7 Antworten
  • Letztes Antwortdatum
P

Patpa

Neues Mitglied
0
Hi Leute,
hab eine grundlegende Frage. Ich definiere in einer onClick Methode ein double Array. Ich definiere es dort, da ich dort auch den nötigen Speicherplatz ermittel und mein Array mit Inhalt fülle. Jetzt habe ich aber noch eine weitere Methode in der ein "Bundle" geschnürt wird und an die aufgerufene Klasse übergeben wird. In diesem "Bundle" soll auch mein double Array mit Inhalt hinein. Bisher hab ich immer meine Variablen leer in der MainActivity definiert und in der Methode dann mit Inhalt befüllt, dann konnte ich damit auch in anderen Methoden arbeiten. Aber weil ich, wie schon gesagt, erst mein double Array Speicherbedarf ermitteln muss geht das leider nicht mehr so einfach ... zumindest bekomme ich es nicht hin. Im Internet findet man so einfache Fragen nicht :unsure: da geht es meistens darum wie man variablen an andere Klassen übergibt aber nicht einfach an eine andere Methode ...
Hoffe jemand kann mir kurz sagen was ich machen muss.
Gruß
Patpa
 
ähm.. als Parameter?

methode (Array[] array)

Ansonsten kannst du das Array doch genauso in der Activity definieren wie jede andere Variabel

Object[] array;
Da brauchst du ja noch keinerlei Wissen über den Speicherbedarf.

Vergiss nur nicht in der anderen methode zu prüfen, ob das Array auch schon gefüllt ist, sonst gibt's da fiese NullPointerExceptions.
 
Also hab es so probiert: in der activity double[] koordX; in der Methode dann double[] koordX = new double; und dann befüll ich das Ding aber wenn ich dann in der nächsten Methode schreibe bundle.putdoublearray("koordX1", koordX); bleibt koordX = null; ... Hoffe der Quellcode stimmt so bin grad aufm heimweg. Kann es sein, dass ich vielleicht den speicherbedarf falsch setze?
 
Bist du sicher, dass koordX beide Male die selbe variable ist?
 
Ehrlich gesagt nein ich glaube mit double[] koordX = new double; definiere ich ein neues array ... wäre zumindest mal eine Erklärung. Weiß jemand wie das richtig geht?
 
ja.. statt double[] koordX = new double;

einfach nur koordX = new double
dann nutzt du die Variable die in der Activity definiert wurde.
Das ist aber bei normalen Variablen nicht anders.
 
hehe dazu findest du sicher 100000 seiten im netz.

vor allem zu anfänger fragen gibt es zu hauf lösungen. einfach das problem ins englische übersetzen und googlen. da bekommst zu 100% immer hilfe
 
Erstmal danke an alle! amfa ja du hattest recht so funktioniert es. Will mich jetzt nicht rausreden aber bin mir eigentlich ziemlich sicher dass ich es so auch schon mal probiert habe :D
Sry, swordi ich weiß dass ich mich dumm anstelle ... hab eine zeitlang gegooglet bin aber eher auf sachen gestoßen wo es darum ging variablen an klassen zu übergeben und hab dann versucht diese Möglichkeiten abzukupfern und irgendwie anzuwenden.
 
Zurück
Oben Unten