So funktioniert wunderbar aber ein kleines Problem habe ich. Die Layouts die gewechselt werden (bzw. wird immer das selbe gewechselt) sind immer Tabellen, deren Inhalte aber dynamisch im Code eingefügt werden.
Hier mal der Code:
1// going backwards: pushing stuff to the right
2 if (downXValue < currentX && currentX - downXValue > 150)
3 {
4 // Get a reference to the ViewFlipper
5 ViewFlipper vf = (ViewFlipper) findViewById(R.id.day_details);
6 // Set the animation
7 vf.setInAnimation(arg0.getContext(), R.anim.slide_in_left);
8 vf.setOutAnimation(arg0.getContext(), R.anim.slide_out_left); // Flip!
9 vf.showPrevious();
10 this.day -=1;
11 if (this.day <1) {
12 this.day=6;
13 }
14 this.setContentView(R.layout.main);
15 this.setDayText();
16 this.createRowDay(this.getSubjecttable().getTimeTableSubjectsForDay(this.day));
17 // Register Touch Event for the vertical layout
18 LinearLayout layMain = (LinearLayout) findViewById(R.id.layout_day);
19 layMain.setOnTouchListener((OnTouchListener) this);
20
21
22 }
Das ist jetzt ein Ausschnitt. Wenn ich alles unterhalb von vf.showPrevious(); wegnehme habe ich animationen, mit dem Code funktioniert der Wechsel, allerdings ohne Animation.
Hat jemand eine Idee woran es liegt?
/edit Kaum schreib ichs fällt mir der Fehler auf. this.setContentView(R.layout.main); muss das erste sein, was in der If Bedingung ausgeführt werden muss. Ansonsten werden die Animationen nicht an den Viewflipper überwiesen.
— geändert am 05.11.2010, 09:33:44
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.