Layout wechseln , aber wie ?

keinbrain

keinbrain

Erfahrenes Mitglied
21
Hi, ich bin noch ziemlicher Anfänger im Android programmieren, deshalb ist diese Frage auch seh simpel und denoch komme ich nicht dahinter...

Ich arbeite an einer App die insgesammt aus 4 Layouts bestehen soll, bei dem man von jeweils jedem Layout die anderen 3 aufrufen kann. Die einzige Lösung die ich gefunden hab, das Layout zu wechseln, war bei jedem klick auf einen button die bisherige aktivity zu killen und eben eine neue zu starten. Jedoch ist das bestimmt nicht die elleganteste Lösung, zumahl sie unmengen an Leistung zieht. Wie könnte ich das ganze noch machen?

Vielen Dank im Vorraus :)

PS: Version ist 2.3.3

Mein Code :

public class akku extends Activity{


@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.akku);



/*Buttons werden aktiviert - Klick wechselt die activity bzw. das Layout */


final Button button1 = (Button) findViewById(R.id.But1);
button1.setOnClickListener(new View.OnClickListener() {

public void onClick(View v) {

startActivity(new Intent (akku.this, System.class));
akku.this.finish();
}
});

final Button button2 = (Button) findViewById(R.id.But2);
button2.setOnClickListener(new View.OnClickListener() {

public void onClick(View v) {

startActivity(new Intent (akku.this, erweitert.class));
akku.this.finish();
}
});

final Button button3 = (Button) findViewById(R.id.But3);
button3.setOnClickListener(new View.OnClickListener() {

public void onClick(View v) {

startActivity(new Intent (akku.this, speicher.class));
akku.this.finish() ;
}
});


}
}
 
Ich hab das so gemacht:
Code:
main.xml
   <Button android:text="@string/starteUnterprogramm" 
   ... android:onClick="@string/callUnterprogramm"></Button>
Code:
strings.xml
    <string name="starteUnterprogramm">Unterprogramm aufrufen</string>
    <string name="callUnterprogramm">subPart2</string>
Code:
Menue.java
    public void subPart2(View view) {
        Intent intent = new Intent( this, Part2.class );
        startActivity(intent);
    }
Code:
AndroidManifest.xml
     <activity android:name=".Part2" android:label="@string/app_name">
         <!-- OHNE 'intent'-Teil! weil sonst weiteres App-Icon entsteht. -->
     </activity>
Code:
Part2.class mit eigenemLayout + SourceCode
Schaut für mich logisch und übersichtlich und "energiesparend" aus.
Funktionieren tut's perfekt, ob's richtig ist, müssen Profis beurteilen.
 

Ähnliche Themen

M
Antworten
3
Aufrufe
150
moin
M
L
Antworten
4
Aufrufe
1.332
lonnie9020
L
Zurück
Oben Unten