Android Auslagern der überschriebenen Methoden

Ystro

Neues Mitglied
Hallo,
seit kurzer Zeit beschäftige ich mit der App-Entwicklung und und mir ist aufgefallen, dass z.B. die Funktion der
Java:
 @Override
    public void onBackPressed() {}
in meinem Fall bei einigen Activites exakt gleich ist.

Gibt es eine Möglichkeit diese @Override-Methoden in eine Art Include auszulagern?
LG und Danke in Vorraus
Ystro :)
 

Jardcore

Top Contributor
Kannst du das genauer spezifizieren?

Kenne mich im Bereich AppEntwicklung noch nicht so aus, Activites war ein Fenster oder?

Du könntest eine Zwischenebene einziehen und dort die Methode implementieren.
Du könntest ein StrategyPattern verwenden und sagen das alle deine Activites die gleiche Strategie bei onBackPressed() benutzten.
 

Ystro

Neues Mitglied
Genau, jede Activity ist eine .java Datei, die mit startActivity(Intent) aufgerufen wird.
StrategyPattern klingt interessant, da werde ich mich mal informieren, ich danke dir :)
 

Jardcore

Top Contributor
Das Pattern ist hier vllt nicht so gut, du möchtest ja immer die selbe Sache machen. Das Strategy Pattern ist eher dafür da, mehrere verschiedene Sachen zu machen.

Java:
public abstract class Strategy {
    protected Monster monster;

    public Strategy(Monster monster) {
        this.monster = monster;
    }

    public abstract void move();
}
Java:
public class ZombieMovementStrategy extends Strategy {
    public void move() {
        // walk like a zombie
    }
}
Java:
public class WormMovementStrategy extends Strategy {
    public void move() {
        // crawl like a worm
    }
}
Java:
public abstract class Monster {
    protected Strategy strategy;

    public Monster(Strategy strategy) {
        this.strategy = strategy;
    }

    public void move() {
        strategy.move();
    }
}
Java:
public class Zombie extends Monster {
    public Zombie() {
        super(new ZombieMovementStrategy(this));
    }
}
Java:
public class Worm extends Monster {
    public Worm() {
        super(new WormMovementStrategy(this));
    }
}

Ich glaube das ganze geht auch mit Interfaces, aber das viel mir gerade so ausm Kopf ein^^
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S get Methoden Android & Cross-Platform Mobile Apps 9

Ähnliche Java Themen

Neue Themen


Oben