Android 多点触控和双击协同工作以实现图像视图

2024-01-26

你好 我在 LinearLayout(垂直方向)中有两个图像视图。我正在为两个 Imageview 设置 setOnTouchListener 。 这样我就能够观察多点触摸缩放以及 ImageView 的所有拖动。 当我尝试实现 OnDoubletapListener 时,问题就出现了。 OnDoubleTapListener 仅在不使用 setOnTouchListener 的情况下工作。

但是,如果我评论 setOnTouchListner 那么我就可以执行双击。

两个恐惧不能同时起作用吗????

如果您愿意,我也可以提供源代码.. 帮助

安基特·维尔马


我也遇到过同样类型的问题......我用这种方式解决......

如果您使用 Android mutitouch 控制器http://code.google.com/p/android-multitouch-controller/ http://code.google.com/p/android-multitouch-controller/用于多点触控

和手势检测器http://www.41post.com/4194/programming/android-detecting-double-tap-events http://www.41post.com/4194/programming/android-detecting-double-tap-events用于双击

than

在 MultiTouchController.java 中更新此步骤

--> 导入

  import android.view.GestureDetector.OnDoubleTapListener;

  import android.view.GestureDetector.OnGestureListener;

--> 实施

 public class MultiTouchController<T> implements OnGestureListener{

-->

public MultiTouchController(MultiTouchObjectCanvas<T> objectCanvas2, boolean handleSingleTouchEvents) {

           //....

    gd = new GestureDetector(this);

    // set the on Double tap listener
    gd.setOnDoubleTapListener(new OnDoubleTapListener() {
        @Override
        public boolean onDoubleTap(MotionEvent e) {
            // set text color to green
            Log.d("CLICK", "double taped");



            return false;
        }

        @Override
        public boolean onDoubleTapEvent(MotionEvent e) {
            // if the second tap hadn't been released and it's being moved
            if (e.getAction() == MotionEvent.ACTION_MOVE) {
                Log.d("CLICK", "double tap event ACTION_MOVE");
            } else if (e.getAction() == MotionEvent.ACTION_UP)// user
                                                                // released
                                                                // the
                                                                // screen
            {
                Log.d("CLICK", "double tap event ACTION_UP");
            }
            return false;
        }

        @Override
        public boolean onSingleTapConfirmed(MotionEvent e) {
            // set text color to red
            Log.d("CLICK", "single taped");

            return true;
        }
    });

--> 在 onTouch(MotionEvent event) 处将触摸事件设置为 gd

   public boolean onTouchEvent(MotionEvent event) {

    gd.onTouchEvent(event);

    try {

               //.....

不要更改任何其他文件。

现在测试...希望你解决问题...必须回复...

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 多点触控和双击协同工作以实现图像视图 的相关文章

  • JKS、BKS 和 PKCS12 文件格式

    我正在设置一个无头服务器 该服务器使用用户提供的数据 JS CSS HTML 密钥库 为 Android 构建 Phonegap 混合应用程序 我想进行一些基本的客户端检查 以确保上传的密钥库有效 对于 JKS 文件 我发现可以通过确保提供
  • WifiConfiguration 在 Lollipop 中启用网络

    我正在研究 Wifi 项目 有一个模块可以让用户以编程方式加入 wifi 在 kitkat 及以下版本中它可以成功工作 但在 Lollipop 中它不起作用 这是代码 WifiManager wifiManager WifiManager
  • Parcelable 写入可序列化对象 getactivity() 时遇到 IOException

    所以我在 logcat 中得到了这个 java lang RuntimeException Parcelable encountered IOException writing serializable object name com re
  • 如何在 Android 中以编程方式配置启动器活动?

    我正在开发一个具有两项活动的应用程序 LoginActivity and MainActivity 当用户首次打开应用程序时 他将登录并且他的凭据 用户名和令牌 保存在Preferences 现在 如果用户再次打开应用程序MainActiv
  • 不支持动态值作为注释中的属性 - AspectJ Android [AOP Android]

    我正在使用自定义注释来记录用户单击的 id 但我收到一个错误 属性值必须是常量 我的代码片段如下 mAssetId Asset getContentId TrackEvent track event ArrayParams Params k
  • 如何设置itemTouchHelper选择性滑动?

    所以我在 recyclerview rv 上实现了这个 itemtouchhelper simple 回调 现在 在这个 rv 中 我根据内容类型将 2 种布局设置为一行 因此 当我在 rv 上设置此 touchhelper 时 它正在这两
  • 找不到 RecyclerView 类 android.support.v7.recyclerview.R$styleable

    我在我的应用程序上使用 RecyclerView 但在运行时应用程序崩溃并且我的 logcat 读取 java lang RuntimeException Unable to start activity ComponentInfo com
  • 如何在发布版本中使用 Zebra EMDK?

    所以我有一台 Zebra MC330M 设备 我之前创建了一个应用程序 我想使用 PDA 内置的条形码扫描仪 如果在调试模式下运行我的应用程序 一切正常 我可以读取条形码 但是如果我创建暂存或释放版本 apk 则条形码读取器不活动 因此如果
  • 使用 ArrayAdapter 的 ListView 中的按钮

    我有一个使用 POJO 类填充的 ArrayAdapter 列表视图由 2 个布局组成 1 代表菜单项 1 代表类别 带分隔符的列表视图很好 后来我尝试在每个菜单项行中添加一个按钮来编辑其中的详细信息 当我尝试获取单击按钮的行的位置时 我遇
  • 要在进程中运行 dex,Gradle 守护进程需要更大的堆。目前有 910 MB

    实际上主要错误是 java exe完成非零退出值 1 首先我告诉你安装 studio 后遇到的每个问题 三天前 我刚刚安装了 android studio 并创建了新项目 1 首先它抛出错误 插件太旧 请更新到更新的版本 在谷歌上搜索后我改
  • 在 doInBackground 方法中启动活动

    在下面的代码中 我从互联网下载 json 并希望显示在列表中 如果列表为空 则转到另一个活动 但其他活动未启动 没有错误 但没有启动活动 感谢您的帮助 package ir mohammadi android nightly import
  • 如何从另一个应用程序向一个应用程序添加视图

    我的应用程序叫做我的好应用 MyNiceApp 主要只是一个加载视图的核心coreView在主活动中onCreate coreView由用户根据需要下载的其他插件的视图填充 我定义了核心视图上的各个区域 这些区域可以通过 MyNiceApp
  • 如何使用RecyclerView.State保存RecyclerView滚动位置?

    我有一个关于 Android 的问题RecyclerView State http developer android com reference android support v7 widget RecyclerView State h
  • Android 连接有时会被拒绝(并非所有时候)

    我编写了一个 WiFi Direct 代码连接并在它们之间创建了一个连接 然后我创建了一个ServerSocket在第一面和一个Socket在客户端并开始在它们之间发送数据 第一次启动应用程序时它工作成功 但是当我关闭应用程序并再次启动它时
  • Android 简单 TextView 动画

    我有一个 TextView 我想倒计时 3 2 1 发生了事情 为了使其更有趣 我希望每个数字都以完全不透明开始 然后淡出至透明 有没有一种简单的方法可以做到这一点 尝试这样的事情 private void countDown final
  • 如何将 currentTimeMillis 转换为可读的日期格式? [复制]

    这个问题在这里已经有答案了 我想用currentTimeMillis两次 这样我就可以计算持续时间 但我也想以用户可读的格式显示时间和日期 我遇到了麻烦currentTimeMillis有利于计算 但我看不到内置函数可以转换为合适的时间或时
  • Activity 上的 OnTouchListener 从不调用

    我使用了这段代码 但是当我在运行时单击活动时 它永远不会在 OnTouch 方法中命中 有人可以指导我我做错了什么吗 我需要设置此活动的内容视图吗 实际上我想要用户在执行过程中触摸的活动的坐标 public class TouchTestA
  • Android 图标与徽标

    The
  • 随着速度变化,速度表针规绕其中心旋转

    Hi all 我编写了一个应用程序 其中有一个速度计 其指针垂直设置为 90 度 我试图以每秒变化的速度绕其中心旋转指针 我在文本视图中显示变化的速度 从 0 到 120 随机 我正在从远程服务获取速度并显示在文本视图中 因此 当速度发生变
  • 如何在对话框中配置自定义按钮?

    这里我有一个自定义对话框 里面有背景 2 ImageButton 问题是 当我尝试为该按钮设置 onclick 侦听器时 程序将返回 NullPointerException 我不知道为什么会发生这种情况 无论如何如何将操作分配给对话框内的

随机推荐