交替触摸动画

时间:2013-09-17 06:36:02

标签: android android-layout android-listview android-animation

我有两个相同视图的翻译动画类,我现在想要的是我需要视图来使用替代触摸来隐藏/显示。当放在一起时,只有一个动画正在工作,我需要两个工作的替代接触。这是我的代码。

ln.setOnTouchListener(new View.OnTouchListener() 
        {
            @Override
            public boolean onTouch(View view, MotionEvent motionEvent) 
            {
                if(motionEvent.getAction() == MotionEvent.ACTION_DOWN)
                {
                    Animation animation = new TranslateAnimation(0,-200,0, 0);
                    animation.setDuration(2000);
                    animation.setFillAfter(true);
                    lv.startAnimation(animation);
                    lv.setVisibility(0);

                    }
                    else
                    {
                     Animation animation = new TranslateAnimation(-200,0,0, 0);
                        animation.setDuration(3000);
                        animation.setFillAfter(true);
                        lv.startAnimation(animation);
                      lv.setVisibility(0);

                }


                return true;
            }
        });
    }

我提到了this,但我仍然面临着这个问题。谁能告诉我如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

最后我找到了解决问题的方法。这是代码。

layout.setOnTouchListener(new View.OnTouchListener() 
 {
     @Override
     public boolean onTouch(View view, MotionEvent motionEvent) 
     {
         if(motionEvent.getAction() == MotionEvent.ACTION_DOWN)
         {
            if(gone)
            {
                 Animation animation = new TranslateAnimation(-300,0,0, 0);
                 animation.setFillAfter(true);
                 animation.setDuration(500);
                 lv.setAnimation(animation);

                 gone = false;

            }
            else
            {
                 Animation animation = new TranslateAnimation(0,-300,0, 0);
              animation.setFillAfter(true);
              animation.setDuration(500);
                 lv.setAnimation(animation);
                 gone = true;
            }
         }
        return true;
     }
 });

和boolean gone = false;在顶部.. 希望这会对某人有所帮助: - )