2013-08-22 7 views
0

привет, я создал флип-представление в своей деятельности. У меня есть 2 изображения, которые мне нужно, чтобы перевернуться, но это не переворачивание имени. Я могу просто просмотреть свое первое изображение на экране ... I даю мой файл класса и XML ниже .. Мне нужно какое-то решениеview flipper is not flipping

 import android.app.Activity; 
     import android.os.Bundle; 
     import android.view.MotionEvent; 
     import android.widget.ViewFlipper; 

      public class Viewflip extends Activity 
      { 
     private ViewFlipper viewFlipper; 
     private float lastX; 

     @Override 
     protected void onCreate(Bundle savedInstanceState) 
     { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.gallery); 
        viewFlipper = (ViewFlipper) findViewById(R.id.view_flipper); 
     } 



     // Method to handle touch event like left to right swap and right to left swap 
     public boolean onTouchEvent(MotionEvent touchevent) 
     { 
        switch (touchevent.getAction()) 
        { 
          // when user first touches the screen to swap 
          case MotionEvent.ACTION_DOWN: 
          { 
           lastX = touchevent.getX(); 
           break; 
          } 
          case MotionEvent.ACTION_UP: 
          { 
           float currentX = touchevent.getX(); 

           // if left to right swipe on screen 
           if (lastX < currentX) 
           { 
             // If no more View/Child to flip 
            if (viewFlipper.getDisplayedChild() == 0) 
             break; 

            // set the required Animation type to ViewFlipper 
            // The Next screen will come in form Left and 
        current Screen will go OUT from Right 
            viewFlipper.setInAnimation(this, 
       R.anim.in_from_left); 
            viewFlipper.setOutAnimation(this, 
        R.anim.out_to_right); 
            // Show the next Screen 
            viewFlipper.showNext(); 
           } 

           // if right to left swipe on screen 
           if (lastX > currentX) 
           { 
            if (viewFlipper.getDisplayedChild() == 1) 
             break; 
            // set the required Animation type to ViewFlipper 
            // The Next screen will come in form Right and 
       current Screen will go OUT from Left 
            viewFlipper.setInAnimation(this, 
       R.anim.in_from_right); 
            viewFlipper.setOutAnimation(this, 
       R.anim.out_to_left); 
            // Show The Previous Screen 
            viewFlipper.showPrevious(); 
           } 
           break; 
          } 
        } 
        return false; 
        } 

        } 

Xml файл

  <?xml version="1.0" encoding="utf-8"?> 
      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="#000000" 
      android:orientation="vertical" > 

     <ViewFlipper 
      android:id="@+id/view_flipper" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_margin="6dip" > 

      <LinearLayout 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:orientation="vertical" > 

       <ImageView 
        android:id="@+id/imageView1" 
        android:layout_width="450dp" 
        android:layout_height="450dp" 
        android:layout_marginTop="15dp" 
       android:src="@drawable/scene1" /> 
       </LinearLayout> 

       <!-- Layout 2 for 2nd Screen --> 

       <LinearLayout 
       android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
       android:gravity="center" 
        android:orientation="vertical" > 

        <ImageView 
        android:id="@+id/imageView2" 
        android:layout_width="450dp" 
        android:layout_height="450dp" 
        android:layout_marginTop="15dp" 
       android:src="@drawable/scene2" /> 
       </LinearLayout> 
       </ViewFlipper> 

       </LinearLayout> 

давать мои анимации XML файлы ниже

   **in_from_left.xml** 

       <set xmlns:android="http://schemas.android.com/apk/res/android" 
       android:shareInterpolator="false"> 
       <translate 
       android:fromXDelta="-100%" android:toXDelta="0%" 
       android:fromYDelta="0%" android:toYDelta="0%" 
       android:duration="1400" /> 
       </set> 

       **in_from_right.xml** 

       <set xmlns:android="http://schemas.android.com/apk/res/android" 
       android:shareInterpolator="false"> 
      <translate 
       android:fromXDelta="100%" android:toXDelta="0%" 
       android:fromYDelta="0%" android:toYDelta="0%" 
       android:duration="1400" /> 
       </set> 


       **out_to_left.xml** 

      <set xmlns:android="http://schemas.android.com/apk/res/android" 
      android:shareInterpolator="false"> 
       <translate android:fromXDelta="0%" android:toXDelta="-100%" 
       android:fromYDelta="0%" android:toYDelta="0%" 
       android:duration="1400"/> 
       </set> 


       **out_to_right.xml** 

       <set xmlns:android="http://schemas.android.com/apk/res/android" 
       android:shareInterpolator="false"> 
      <translate android:fromXDelta="0%" android:toXDelta="100%" 
       android:fromYDelta="0%" android:toYDelta="0%" 
       android:duration="1400"/> 
       </set> 

ответ

0

Я пробовал ваш код, он выглядит нормально.

его работает отлично.

Проблема с линиями анимации. Это не работает.

Просто прокомментируйте линии анимации, это сработает.

И если вы хотите, чтобы анимация также делила код для файлов анимации.

+0

без анимации Я вижу свое изображение, он также работает в моей, но мне нужна анимация, я дал свои анимационные xml-файлы выше, пожалуйста, проверьте ... – user2656455