【问题标题】:Android: fllipper view not getting fllipedAndroid:鳍状肢视图没有被翻转
【发布时间】:2011-05-21 10:12:26
【问题描述】:

基本上,我有一个 ViewFlipper,当我用手指滑动时它会翻转。这是我的 Activity 中的代码:

public boolean onTouchEvent(MotionEvent touchevent) {
    switch (touchevent.getAction()) {
    case MotionEvent.ACTION_DOWN: {
        oldTouchValue = touchevent.getX();
        break;
    }
    case MotionEvent.ACTION_UP: {
        float currentX = touchevent.getX();
        if (oldTouchValue > currentX) {
            ViewHelper.swapFlipperNext(vf);//helper method for flipping
            setMyProgress();//helper method to set my progress bar
        }
        if (oldTouchValue < currentX) {
            ViewHelper.swapFlipperPrevious(vf);
            setMyProgress();
        }
        break;
    }
    }
    return false;
}

它完美无缺,除了一件事,如果我的手指在屏幕的非视图部分,我可以翻转它。但是,如果我的图形在某些视图上滑动(因为我在翻转器的每个页面中也有 textviews 和 webviews),onTouchEvent 不会被激活,所以 ViewFlipper 不会被切换,我该如何解决?非常感谢

【问题讨论】:

    标签: android switch-statement gesture viewflipper swipe


    【解决方案1】:

    尝试将 textviews 和 webviews 上的 focusable 属性设置为 false。基本上我认为正在发生的是这些正在消耗触摸事件。

    编辑:如果这不起作用,请尝试以下操作

    @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        if (gestureDetector != null) {
            gestureDetector.onTouchEvent(ev);
        }
        return super.dispatchTouchEvent(ev);
    }
    

    其中gestureDetector是一个成员变量。

    从这里查看:EditText not capturing ViewFlipper flings?

    【讨论】:

    • 我认为也可能是因为这个,但问题是,我试图将这些视图的焦点设置为 false,但它们变得不可编辑,我仍然需要对这些进行操作,此外,即使我设置了它仍然无法切换
    • 问题已解决,但即使我拖动以查看其中的 webview 和其他内容,我的脚蹼也会翻转-_-
    猜你喜欢
    • 1970-01-01
    • 2022-08-11
    • 2017-02-21
    • 2020-08-10
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    • 2021-10-13
    • 1970-01-01
    相关资源
    最近更新 更多