Wiederkehrenden Code auslagern

  • 5 Antworten
  • Neuester Beitrag
Diskutiere Wiederkehrenden Code auslagern im Android App Entwicklung im Bereich Betriebssysteme & Apps.
M

Mits

Neues Mitglied
Hallo Leute!

Entschuldigt, is vielleicht ehr eine Anfängerfrage!

Ich habe einen SeitenHeader der in jeder Seite eingebunden wird.
In diesem SeitenHeader sind 2 Buttons drinnen, die immer das gleiche tun,
Home Button und Config Button.

Wie kann ich jetzt den Code für diese zwei Buttons in eine Datei auslagern und
nur diese immer einbinden damit ich den Code auch nur einmal ändern muss.

Hier mein Code für die Buttons:

Code:
        configButton = (ImageButton) findViewById(R.id.buttonConfig);
                configButton.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View v) {
                        startActivity(new Intent(CustomerDetailsActivity.this, ExampleProjectActivity.class));
                    }
                });

                
        //Hier wird auf die Startseite zurückgesprungen        
                    
        homeButton = (ImageButton) findViewById(R.id.buttonFuchsHome);
        homeButton.setOnClickListener(new OnClickListener() {
                                    @Override
                                    public void onClick(View v) {
                                        startActivity(new Intent(CustomerDetailsActivity.this, StartActivity.class));
                                    }
                                });
Ist das möglich?
Wie mach ich das?

Bin für jeden Tip dankbar!

lg
Jörg
 
S

swordi

Lexikon
du könntest dir eine BaseActivity machen, die genau das bereitstellt.

Alle deine Activities leitest dann davon ab.
 
M

Mits

Neues Mitglied
Hallo Swordi!

Vielen dank, das werd ich mal ausprobieren!

Lg Jörg
 
M

Mits

Neues Mitglied
Hallo Swordi!

Jetzt muß ich noch mal etwas Nachfragen!

Wenn ich jetzt den Code in eine BasicKlasse auslagere, wo gebe ich dann
an welche layout Datei verwendet wird.

In der BasicKlasse oder in der die von der BasicKlasse abgeleitet wird?
Da fehlt mir noch etwas der Durchblick!

Eine Klasse wird mit

public class StartActivity extends BasicActivity

abgeleitet oder ist der Aufruf dann falsch?

Vielen dank im Voraus!

lg
Jörg
 
S

swordi

Lexikon
es gibt hier mehrere wege das zu realisieren:

du gibst das layout in der abgeleiteten klasse an.

dann machst in der basis klasse sowas wie public void init();

im init holst dir dann deine immer wiederkehrenden elemente. oder aber du inflastest dann dein wiederkehrendes layout und fügst es irgendwo hinzu.

standardlösung dafür gibt es nicht.

Der ursprüngliche Beitrag von 15:43 Uhr wurde um 15:44 Uhr ergänzt:

andere variante:

du arbeitest mit fragments. erzeugst einen container mit allem drumherum und tauscht dann einfach innen die fragmente aus. somit hast auch den fixen teil immer da und schreibst ihn nur einmal
 
M

Mits

Neues Mitglied
Hallo Sworid!

Vielen dank für die Hilfe!

Ich werd das mal ausprobieren!

lg
Jörg
 
Ähnliche Themen - Wiederkehrenden Code auslagern Antworten Datum
11