1. Gewinne jetzt ein UMiDIGI C Note - alle Informationen findest du hier!!
  1. pixelflicker, 20.09.2011 #1
    pixelflicker

    pixelflicker Threadstarter Junior Mitglied

    Hallo,

    ich steh grad total auf dem Schlauch. Obwohl es etwas selbstvertändliches ist komme ich nicht drauf, vielleicht kann mich jemand drauf schubsen.

    Wenn ich eine zweite Klasse erstelle und innerhalb einer View ein Objekt anlege ( MeineKlasse objekt = new MeineKlasse() ) dann habe ich ja das objekt. Wenn ich nun aus diesem objekt heraus eine Methode in der View aufrufen will, wie geht das? Ich weiß ja den Objektnamen der View nicht, oder?

    Also ich habe z.B. in der View eine Methode setText(). Wie kann ich die dann aus der zweiten Klasse heraus aufrufen?
     
  2. Tom299, 20.09.2011 #2
    Tom299

    Tom299 Android-Experte

    hmm, so richtig kapier ich zwar nicht was du meinst, aber wenn du in deiner X-ten klasse eine methode von Y aufrufen willst, brauchst du eine referenz auf Y, es sei denn, es ist ne statische methode. also die referenz der view in deinem konstruktor der 2. klasse mitgeben, dann sollte es doch passen, oder?
     
  3. pixelflicker, 20.09.2011 #3
    pixelflicker

    pixelflicker Threadstarter Junior Mitglied

    Die Referenz. Klar.
    Das wars.

    Danke, den Schubs hab ich gebraucht.
     
  4. maniac103, 20.09.2011 #4
    maniac103

    maniac103 Android-Lexikon

    Wenn es ein inneres, nicht-statisches Objekt ist, solltest du doch die Methoden der äußeren Klasse genauso aufrufen können, als wenn sie zur inneren Klasse gehören, d.h. einfach setText("foo"), oder?

    Sent from my MB525 using Tapatalk
     
  5. pixelflicker, 20.09.2011 #5
    pixelflicker

    pixelflicker Threadstarter Junior Mitglied

    Es ist ja keine Abgeleitete Klasse. Ich hab nur nicht dran gedacht, dass ich ja einfach einen Link mitgeben kann. Ich mag einfach nur eine Methode aus der Activity-Klasse aus einer anderen Klasse heraus ansprechen.

    Direkt ansprechen mit einem Objektnamen kann man das Objekt der Activity wohl nicht, oder?
     
  6. maniac103, 21.09.2011 #6
    maniac103

    maniac103 Android-Lexikon

    Es muss ja auch keine abgeleitete Klasse sein. Sowas hier sollte funktionieren:
    Code:
    public class Foo {
        public Foo() {
        }
        private void method() {
        }
    
        private class Bar {
            public Bar() {
                method();
            }
        }
    }
    
     
  7. pixelflicker, 21.09.2011 #7
    pixelflicker

    pixelflicker Threadstarter Junior Mitglied

    Achso, nein, ich wollte es ja als seperate Klasse haben, weil ich es auslagen möchte. Also eher so:

    Activity A:
    Code:
    public class ActivityA extends Activity {
      public void methodeA() {
        System.out.println("sag was");
      }
    
      KlasseB aufruf = new KlasseB();
    }
    
    Klasse B:
    Code:
    public class KlasseB {
      // Aufruf von MethodeA in Klasse A
    }
    
     
  8. Neeldarax, 21.09.2011 #8
    Neeldarax

    Neeldarax Erfahrener Benutzer

    Hallo pixelflicker,

    Activity A:
    Code:
    public class ActivityA extends Activity {
      public void methodeA() {
        System.out.println("sag was");
      }
    
      KlasseB aufruf = new KlasseB(this);
    }
    
    Klasse B:
    Code:
    public class KlasseB {
       ActivityA actiA;
    
       public KlasseB(ActivityA actiA){
       this.actiA=actiA;
       }
      // Aufruf von MethodeA in Klasse A
      // actiA.methodeA();
    }
    
    So sollte es mit Parameterübergabe gehen.
    Aber Activity übergeben würd ich zwei Mal überlegen. Nur manchmal lässt es sich nicht vermeiden.

    Vllt. kannste auch nach Callbacks googlen, ist auch ne gute Möglichkeit!

    regards
     
    Zuletzt bearbeitet: 21.09.2011
  9. pixelflicker, 21.09.2011 #9
    pixelflicker

    pixelflicker Threadstarter Junior Mitglied

    Aber wie soll ich sonst ohne Referenz auf Elemente (z.B. Textfelder) innerhalb der Activity zugreifen können?
     
  10. Tom299, 21.09.2011 #10
    Tom299

    Tom299 Android-Experte

    Hmmm, mußt du jetzt auf Methoden der anderen Klasse zugreifen oder willst du "nur" Eigenschaften von anderen Widgets setzen?

    Weil die Elemente kannst du dir ja immer mit findViewById(R.id.xxx) besorgen ...
     
  11. pixelflicker, 21.09.2011 #11
    pixelflicker

    pixelflicker Threadstarter Junior Mitglied

    Schön wäre es, wenn ich Beides könnte.
    Grundsätzlich gehts mir aber erstmal nur um die Widgets.
    findViewById bekomme ich aber nur, wenn ich die Klasse mit "extends Activity" anlege, oder?
     
  12. swordi, 21.09.2011 #12
    swordi

    swordi Gewerbliches Mitglied

    du musst ein activity object haben. woher ist egal.

    glaub du solltest zuerst java mal näher betrachten.
     
  13. pixelflicker, 21.09.2011 #13
    pixelflicker

    pixelflicker Threadstarter Junior Mitglied

    Mir fehlt einfach die Übung, das weiß ich schon.
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[ERLEDIGT] Eine Klasse um das aufrufen anderer Intents zu regeln Android App Entwicklung 24.05.2017
[RÜCKMELDUNG FEHLT] Text und Bilder in View einbinden Android App Entwicklung 26.03.2017
[OFFEN/DISKUSSION] Auf der Suche nach der besten Purchase Methode Android App Entwicklung 24.03.2017
[ERLEDIGT] View zum selektieren der Wochentage Android App Entwicklung 19.03.2017
[OFFEN] Snackbar Textzeilen setzen in einer onclick methode Android App Entwicklung 17.03.2017
Canvas - onDraw(): 1 invalidate() sind 3 Aufrufe von onDraw() ? Android App Entwicklung 08.02.2017
Fehlermeldung: Incorrectly called buildLayer on View: ShortcutAndWidgetContainer, destroying layer... Android App Entwicklung 30.01.2017
Viewelemente neu zeichnen Android App Entwicklung 04.01.2017
Implementieren der Methode nicht möglich Android App Entwicklung 20.12.2016
Text View erzeugt rendering Problem Android App Entwicklung 18.11.2016

Users found this page by searching for:

  1. android methode aufrufen

    ,
  2. View aufrufen

    ,
  3. android funktion aufrufen

    ,
  4. android java funktion deklarieren
Du betrachtest das Thema "Methode aus View aufrufen" im Forum "Android App Entwicklung",