O
ostone86
Neues Mitglied
- 0
Hallo,
ich programmiere gerade für's Studium ein Spiel.
In einem Teil des Spiels drehen sich hintereinander zufällig gewählte Button.
Im ersten Durchgang nur einer, im Zweiten zwei...
Folgende Methode ist dafür zuständig:
public void rotateButton(){
Animation animation = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.animation_rotate);
_rotateButton = _memory.randomize();
for(int i = 0; i < _rotateButton.size(); i++){
int index = _rotateButton.get(i);
Button btn = _buttonCollection.get(index-1);
btn.startAnimation(animation);
}
}
_rotateButton ist hierbei eine ArrayList, welche je nach Durchgang ein Element mehr erhält.
Die xml der Animation sieht wie folgt aus:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<rotate
android:fromDegrees="0"
android:toDegrees="360"
androidivotX="50%"
androidivotY="50%"
android:duration="1500" />
</set>
Nun soll zwischen den einzelnen Animationen (also ab Durchgang 2) aber einige Sekunden passe sein. Momentan drehen sich die Button fast zeitgleich. Habe schon versucht ein startOffset einzubauen, aber trotzdem drehen sich die einzelnen Button unmittelbar hintereinander.
Dann habe ich versucht den einzelnen Schleifedurchlauf über Thread.slepp(1000) zu verzögern. Klappt aber auch nicht.
Hat jemand eine Idee?
Grüße,
ostone86
Der ursprüngliche Beitrag von 13:06 Uhr wurde um 13:07 Uhr ergänzt:
Hey... Wieso wird aus [... ivot...] ein Smily?
Und wo sind die Tabs des Quellcodes? So lässt sich das ja blöd lesen... :-(
ich programmiere gerade für's Studium ein Spiel.
In einem Teil des Spiels drehen sich hintereinander zufällig gewählte Button.
Im ersten Durchgang nur einer, im Zweiten zwei...
Folgende Methode ist dafür zuständig:
public void rotateButton(){
Animation animation = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.animation_rotate);
_rotateButton = _memory.randomize();
for(int i = 0; i < _rotateButton.size(); i++){
int index = _rotateButton.get(i);
Button btn = _buttonCollection.get(index-1);
btn.startAnimation(animation);
}
}
_rotateButton ist hierbei eine ArrayList, welche je nach Durchgang ein Element mehr erhält.
Die xml der Animation sieht wie folgt aus:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<rotate
android:fromDegrees="0"
android:toDegrees="360"
androidivotX="50%"
androidivotY="50%"
android:duration="1500" />
</set>
Nun soll zwischen den einzelnen Animationen (also ab Durchgang 2) aber einige Sekunden passe sein. Momentan drehen sich die Button fast zeitgleich. Habe schon versucht ein startOffset einzubauen, aber trotzdem drehen sich die einzelnen Button unmittelbar hintereinander.
Dann habe ich versucht den einzelnen Schleifedurchlauf über Thread.slepp(1000) zu verzögern. Klappt aber auch nicht.
Hat jemand eine Idee?
Grüße,
ostone86
Der ursprüngliche Beitrag von 13:06 Uhr wurde um 13:07 Uhr ergänzt:
Hey... Wieso wird aus [... ivot...] ein Smily?
Und wo sind die Tabs des Quellcodes? So lässt sich das ja blöd lesen... :-(