2013-02-13 2 views
1

Я создаю Viewflipper. Однако, когда я бегу и пытаюсь перенести мою руку на экран, ничего не происходит. Что я пропустил? ThanksViewflipper не переворачивается

Адрес: java-код.

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.gallery); 

    flipper = (ViewFlipper)findViewById(R.id.flipperGallery); 
    flipper.setOnTouchListener((android.view.View.OnTouchListener) this); 
} 

@Override 
public boolean onTouchEvent(MotionEvent touchevent) { 
switch (touchevent.getAction()) 
{ 
    case MotionEvent.ACTION_DOWN: 
    { 
    lastX = touchevent.getX(); 
    Toast.makeText(this, "X: " + lastX, Toast.LENGTH_LONG).show(); 

    break; 
    } 
case MotionEvent.ACTION_UP: 
    { 
    float currentX = touchevent.getX(); 
    if (lastX < currentX){ 
     Toast.makeText(this, "scroll right: ", Toast.LENGTH_LONG).show(); 

     if (flipper.getDisplayedChild()==0) break; 
     flipper.setInAnimation(this, R.anim.in_from_left); 
     flipper.setOutAnimation(this, R.anim.out_to_right); 
     flipper.showNext(); 
     } 
    if (lastX > currentX){ 
     Toast.makeText(this, "scroll left: ", Toast.LENGTH_LONG).show(); 

     if (flipper.getDisplayedChild()==1) break; 
     flipper.setInAnimation(this, R.anim.in_from_right); 
     flipper.setOutAnimation(R.anim.out_to_left); 
     flipper.showPrevious(); 
     } 
    break; 
    } 
} 
return false; 
} 

Я создаю Viewflipper. Однако, когда я бегу и пытаюсь перенести мою руку на экран, ничего не происходит. Что я пропустил? Благодаря

ответ

1

Когда вы получаете ACTION_DOWN в onTouchEvent и возвращать ложь вы не получили каких-либо дальнейших событий, как ACTION_UP, ...
попробовать это:

case MotionEvent.ACTION_DOWN: 
{ 
lastX = touchevent.getX(); 
Toast.makeText(this, "X: " + lastX, Toast.LENGTH_LONG).show(); 

return true; 
} 
Смежные вопросы