package pl.polidea.androidflip3d.testingactivity;
import pl.polidea.androidflip3d.Flip3DView;
import pl.polidea.androidflip3d.Flip3DViewState;
import pl.polidea.androidflip3d.Flip3DViewState.Flip3DViewListener;
import pl.polidea.androidflip3d.R;
import pl.polidea.androidflip3d.ViewIndex;
import android.app.Activity;
import android.os.Bundle;
/**
* Just a test activity to test the behaviour of the flip image.
*
*/
public class Flip3DTestActivity extends Activity {
private static final String PACKAGE_NAME = "pl.polidea.androidflip3d";
private static final int NUM_VIEWS = 4;
private final Flip3DViewState[] viewStates = new Flip3DViewState[NUM_VIEWS];
private final Flip3DViewListener[] listeners = { new Flip3DViewListener() {
@Override
public void onStartedFlipping(final Flip3DViewState view, final int startingSide,
final boolean manuallyTriggered) {
if (manuallyTriggered && startingSide == ViewIndex.FRONT_VIEW) {
viewStates[1].forceFlipTo(ViewIndex.FRONT_VIEW);
}
}
@Override
public void onFinishedFlipping(final Flip3DViewState view, final int endingSide, final boolean manuallyTriggered) {
// do nothing
}
}, new Flip3DViewListener() {
@Override
public void onStartedFlipping(final Flip3DViewState view, final int startingSide,
final boolean manuallyTriggered) {
if (manuallyTriggered) {
viewStates[0].forceFlipTo(ViewIndex.FRONT_VIEW);
}
}
@Override
public void onFinishedFlipping(final Flip3DViewState view, final int endingSide, final boolean manuallyTriggered) {
// do nothing
}
}, new Flip3DViewListener() {
@Override
public void onStartedFlipping(final Flip3DViewState view, final int startingSide,
final boolean manuallyTriggered) {
// do nothing
}
@Override
public void onFinishedFlipping(final Flip3DViewState view, final int endingSide, final boolean manuallyTriggered) {
if (manuallyTriggered && endingSide == ViewIndex.FRONT_VIEW) {
viewStates[3].forceFlipTo(ViewIndex.BACK_VIEW);
}
}
}, new Flip3DViewListener() {
@Override
public void onStartedFlipping(final Flip3DViewState view, final int startingSide,
final boolean manuallyTriggered) {
// do nothing
}
@Override
public void onFinishedFlipping(final Flip3DViewState view, final int endingSide, final boolean manuallyTriggered) {
if (manuallyTriggered) {
viewStates[2].forceFlipTo(ViewIndex.BACK_VIEW);
}
}
} };
@Override
protected void onCreate(final Bundle savedInstanceState) {
// ids retrieved dynamically -> avoid errors when importing as library
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Flip3DView[] views = new Flip3DView[NUM_VIEWS];
for (int i = 0; i < NUM_VIEWS; i++) {
views[i] = (Flip3DView) findViewById(this.getResources().getIdentifier("view" + i, "id", PACKAGE_NAME));
viewStates[i] = new Flip3DViewState(i);
viewStates[i].setView(views[i]);
viewStates[i].setFlip3dViewListener(listeners[i]);
}
}
}