2013-06-17 5 views
4

새로운 Android-App을 시작했고 한 가지 문제가 있습니다.ViewFlipper 3D-Card-Flip

일부 ImageView 내에서 ViewFlipper를 코딩하고 싶습니다. (정말 어렵지 않습니다)

사용자가 요소를 클릭 할 때 요소가 (이 3D 플립 애니메이션 : .: http://www.inter-fuser.com/2009/08/android-animations-3d-flip.html) 전환해야합니다. (나는 이미 이것을 구현했다.)

제 아이디어는 ViewFlipper의 첫 번째 요소에만 적용됩니다. 나는이 첫 번째 관점을 부풀리기 시작했지만 새로운 요소는 뒤집히지 않습니다.

두 번째보기도 뒤집을 수 있도록 onclick 이벤트와 함께 첫 번째보기를 "복제/복사"할 수 있습니까?

도움 주셔서 감사합니다.

답변

3

: https://github.com/genzeb/flip

수행하여 (예 : ViewFipper 등) 당신의 ViewAnimator의에서 플립 전환을 사용

을 그리고 여기에 어떤 전망을 뒤집기 할 코드는

AnimationFactory.flipTransition (viewFlipper, FlipDirection.LEFT_RIGHT);

1

샘플로 사용할 수 있습니다. 여기에 객체 애니메이터가 있습니다. :

<?xml version="1.0" encoding="utf-8"?> 
    <objectAnimator xmlns:android="http://schemas.android.com/apk/res/android" 
     android:propertyName="rotationY" 
     android:valueFrom="0" 
     android:valueTo="360" > 
    </objectAnimator> 

일부 자습서에서는 valueTo 만 나타났습니다. 그러면보기가 이미 360으로 바뀌기 때문에 한 번만 넘길 수 있습니다. 더 이상 뒤집지 않으므로 항상 valueFrom도 사용하십시오. 가장 좋고 가장 간단한 해결책은 여기

public static void flip(Context context, View view) { 
    ObjectAnimator anim = (ObjectAnimator) AnimatorInflater.loadAnimator(
      context, R.animator.flip); 
    anim.setTarget(view); 
    anim.setDuration(1000); 
    anim.end(); 
    anim.start(); 
} 
+0

예, 작동합니다. 좋은 작업! 그것이 바뀔 때,보기의 뒤가 다른보기이어야합니다. 두 플립 애니메이터로 예제를 시도했습니다. 첫 번째 애니메이션은 0에서 90까지이고 다른 하나는 90에서 180까지입니다. 첫 번째 애니메이션은 첫 번째 애니메이터로, "backView"는 두 번째 애니메이터로 바뀝니다. 나는 첫 번째의 맨 아래에 두 번째 공백을 배치하고 그것은 작동하지 않습니다. – Billabong

+0

AnimatorListener를 추가하고 처음 애니메이션이 끝나면 두 번째 애니메이션을 시작하는 것은 어떻습니까? 새 라인에서 다른 애니메이션을 호출 할 수는 없습니다. 내가하고있는 일을 생각해보십시오. – Milan

+0

코드에 actionListener를 어떻게 연결할 수 있습니까? – Billabong