0

我有一个动态创建的子视图,它们可以是 textview 或 webview。当孩子是 TextView 时,视图翻转器会正确抛出,但当孩子是 webview 时不会抛出。

4

1 回答 1

0

我遇到了同样的问题。我面临的问题是在一个视图中我在另一个视图中有一个 webview 我在第一个视图中有两个图像视图我试图交换视图没有更改为第二个视图我使用触摸事件在视图之间进行更改,但这没有发生。后来我也为 webview 使用了触摸事件,然后我可以在视图之间交换。

用于交换触摸事件的代码如下。

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;

}

为您的 webview setOnTouchListener 使用相同的代码,以便它可以为您工作。

希望这对您有所帮助。

谢谢和问候,G.Shashank Reddy。

于 2013-11-19T07:14:28.623 回答