在OSX Emulator上没有调用onFling?

问题描述

| 我在玩GestureDetector时,注意到在OSX上的仿真器中运行时,从未调用过onFling方法。 我可以使其在Windows下工作,但不能在osx上工作。 我使用了这篇文章中的出色代码: 在网格布局上翻转手势检测 这是代码
protected void onCreate(Bundle savedInstanceState) {
    // Todo Auto-generated method stub
    super.onCreate(savedInstanceState);

    gestureDetector = new GestureDetector(new MyGestureDetector());

}



public boolean onTouch(View v,MotionEvent event) {
    // Todo Auto-generated method stub
    gestureDetector.onTouchEvent(event);
    return false;
}

protected void addFlingSupportToView(int view) {
    // Todo Auto-generated method stub

    View v = (View) findViewById(view);
    v.setonTouchListener(this);

}

class MyGestureDetector extends SimpleOnGestureListener {

    @Override
    public boolean onFling(MotionEvent e1,MotionEvent e2,float veLocityX,float veLocityY) {
        try {
            if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH)
                return false;
            // right to left swipe
            if (e1.getX() - e2.getX() > SWIPE_MIN_disTANCE
                    && Math.abs(veLocityX) > SWIPE_THRESHOLD_VELociTY) {

            } else if (e2.getX() - e1.getX() > SWIPE_MIN_disTANCE
                    && Math.abs(veLocityX) > SWIPE_THRESHOLD_VELociTY) {

                // Log.i(\"vampidroid\",CryptDetails.this.toString());


                finish();

            }
        } catch (Exception e) {
            // nothing

        }
        return false;
    }
}
问题是,尽管调用了OnTouch,但从未调用过OnFling事件! 我在Windows上使用此代码,工作正常。当我改用osx并尝试时,它没有用。 在设备上,代码按预期工作。 您有什么想法吗?它仅与osx有关吗? 我在网上找不到任何东西,所以我想也许这只是我一个人,没有人检查过。 提前致谢。     

解决方法

        我最近遇到了完全相同的问题。不幸的是,幸运的是,我没有从这篇文章中获得任何帮助,但稍后在运气好的情况下解决了该问题。答案很简单:不要在仿真器中使用TRACKPAD做文件,因为它将无法工作。只需插入外部鼠标,它就可以正常工作。 ps。就我而言,我正在使用macbookpro进行测试。 编辑: 事实证明,这与内部或外部无关。真正的罪魁祸首,至少对我而言,是因为我在系统偏好设置中启用了“制表符单击”并试图制表两次以进行拖动。默认的“按一下”可以完美地工作,没有任何问题。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...