android开发问题(二)解决ScrollView加入后无法执行OnGestureListener的监听函数

主要问题是加入ScrollView之后,左右滑动不执行OnGestureListener的函数了。

为解决这个问题,应该先覆写dispatchTouchEvent方法,然后在执行父类方法钱加入detector.onTouchEvent(ev),来先执行OnGestureListener的函数


package com.sid.point;

import android.app.Activity;
import android.os.Bundle;
import android.view.GestureDetector;
import android.view.GestureDetector.OnGestureListener;
import android.view.MotionEvent;

public class AboutActivity extends Activity  implements  OnGestureListener {
    private GestureDetector detector;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.about_layout);
		//绑定新的分析用户的动作类
        detector = new GestureDetector(this);
	}

	/* 以下是监听左右滑动事件 ;需要继承OnGestureListener*/
	
    @Override  
    public boolean onTouchEvent(MotionEvent event) {
        return this.detector.onTouchEvent(event);  
    }
    /**
     * 解决ScrollView后不执行左右移动监听事件OnGestureListener
     * 在Activity中添加ScrollView实现滚动activity的效果后,activity的滑动效果却无法生效了
     * 原因是因为activity没有处理滑动效果,重写以下方法即可解决。
     */
    @Override 
    public boolean dispatchTouchEvent(MotionEvent ev) { 
        detector.onTouchEvent(ev); 
        return super.dispatchTouchEvent(ev); 
    } 
    /** 
     * 监听滑动 
     */  
    @Override  
    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,  
            float velocityY) {
    	System.out.println("=======================================");
        if (e1.getX() - e2.getX() < -120) {
        	finish();
        }  
        return true;  
    }
    @Override  
    public boolean onDown(MotionEvent e) {  
        return false;  
    }
    @Override  
    public void onLongPress(MotionEvent e) {  
    }  
    @Override  
    public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,float distanceY) {  
        return false;  
    }  
    @Override  
    public void onShowPress(MotionEvent e) {  
    }  
    @Override  
    public boolean onSingleTapUp(MotionEvent e) {  
        return false;  
    }  
}


在claude code desktop中安装pdf处理skill的实战教程 本文介绍了在Claude Code Desktop中安装PDF处理Skill的详细教程。针对国内用户使用第三方API时无法直接调用官方插件的问题,提供了完整的解决方案。教程从下载Anthropic官方Skills源码开始,逐步演示了如何将PDF处理模块打包、上传至Claude Code Desktop,并最终成功加载使用。整个过程采用全流程拆解方式,确保新手也能快速上手。通过本文,读者可以掌握在非官方环境下扩展Claude Code功能的方法,从而提升工作效率 阅读详情

相关推荐

保姆级教程:在CentOS 8上用libvirt + QEMU/KVM搭建ARM64虚拟机(含UEFI配置与常见坑点)

本文提供在CentOS 8上使用libvirt + QEMU/KVM搭建ARM64虚拟机的详细教程,涵盖UEFI配置与常见问题解决方案。通过环境准备、特殊配置要点、UEFI固件安装等步骤,帮助用户在x86架构服务器上高效运行ARM64虚拟化环境,特别适合开发测试与跨平台应用场景。

weixin_30292745的博客 129

android -- 小问题 关于ListView设置了OnScrollListener之后onScrollStateChanged()和onScroll方法监听不到的问题

关于ListView设置了OnScrollListener之后onScrollStateChanged()和onScroll方法监听不到的问题: 原因: 首先OnScrollListener是焦点滚动的监听事件,需要有焦点才能响应。如果在ScrollView中内嵌了ListView之后,动态计算了ListView的高度,并予以设置高度,那么这时用户拖动界面,造成的滚动是ScrollView的滚

PuddingGuo 8112

基于PID算法的循迹小车

这一期为创客们带来基于PID算法的循迹小车制作 1.标准赛道示意图: (该赛道包含了:左直角、右直角、十字路口等路况) 2.灰度传感器安装示意图: (可根据实际情况调节各传感器之间的间距) 3.硬件原理图: 4.控制逻辑: 5.程序如下: #define leftA_PIN 7 #define leftB_PIN 6 #define left_Pwm_PIN 5 #define STBY...

qq_44343584的博客 4万+

Android GestureDetector滑动监听事件

项目中需要做滑动监听事件,具体如下: 做的过程中遇到点小麻烦,写了监听后无效,具体原因及解决方法请看后面 [code="java"] final int RIGHT = 0; final int LEFT = 1; private GestureDetector gestureDetector; @Override protected vo...

乔的笔记 581

手把手实战:快速构建合同智能审查Agent

配置“模型供应商”,选择 “OpenAI-API-compatible”,输入申请到的 “API Key” 和 “URL” 后点击“保存”,如下图示例完成 “AlayaNew/DeepSeek-R1。至此,我们完成了合同智能审核Agent的构建,我们也可以在Dify中把这个智能体发布为API服务,这样企业其它应用如OA就可以通过API集成,在原合同流程中实现智能审核工作。该节点“输入变量”中,配置从“开始”节点中获取上传的文件,输出变量就是合同的内容,配置如下图。接下来我们开始创建智能体。

weixin_46880696的博客 4403

「Unity3D」Addressable版本冲突解析:SBP与Addressables兼容性问题实战指南

本文深入解析Unity3D中Addressable与SBP(Scriptable Build Pipeline)版本冲突问题,提供实战解决方案。当遇到「Build Task CreateBuiltInShadersBundle failed」错误时,可通过版本匹配、临时资源引用或构建参数调整解决。文章详细分析兼容性原理,并给出版本组合指南与最佳实践,帮助开发者高效处理资源构建问题。

weixin_29001683的博客 408

android触摸手势,Android 触摸手势 OnGestureListener

OnGestureListener 可以处理一些简单的触摸手势,比如滑动,长按等,OnGestureListener不能直接设置侦听的,可以设置OnTouchListener,让其指向OnGestureListenerpublic class GestureView extends View implements OnTouchListener, OnGestureListener{Gesture...

weixin_35252187的博客 253

数字后端零基础入门系列 | Innovus零基础LAB学习Day7

数字后端零基础入门系列 | Innovus零基础LAB学习Day7

weixin_37584728的博客 2269

Android ScrollView 滚动监听

ScrollView在工作中是经常用到的一个控件,来看下官方给我们的说明:/** * Layout container for a view hierarchy that can be scrolled by the user, * allowing it to be larger than the physical display. */它是一个可以由用户进行滚动,可以显示比物理屏幕大的

ldhj1993的博客 1208

面向元数据的 SAP UI 中枢:namespace sap.ui.mdc 全景解析

如果把应用前端比作一条数据到交互的装配线,sap.ui.mdc 就是那条线的标准化工装:以 PropertyInfo 描述原料,以 Delegate 定义装配方法,以 p13n 与 VariantManagement 交付面向个体的最终产物;而 Condition Model、Operator 与 ValueHelp 则让输入与筛选的语义落地。与 OData V4 服务与 Fiori Elements 宏构件组合使用时,它能在保持一致体验的同时,给自由式开发者留下足够的可编排空间。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 237

广东省道路工程检测练习试题(单选题)真题

1.一般项目的合格点率应达到( ),且不合格点的最大偏差值不得大于规定允许偏差值的1.5倍。A.不低于75%B.不低于80%C.不低于85%D.不低于90%答案:B2.进行土路基平整度检测时,当路宽小于9m,检测点数应为( )A.1B.2C.3D.4答案:A3.根据《城镇道路工程施工与质量验收规范》,在分部工程中,根据工种、材料、施工工艺等划分的是( )A.单位工程B.分项工程C.分部工程D.工序工程答案:B4.根据《城镇道路工程施工与质量验收规范》,土方路基压实度的检测频率为每1000m每压实层抽检( )

ZShy001238的博客 681

Android ScrollView滑动的监听方法为什么会报错

在一次android app的开发过程中,客户的需求是需要实现界面在下滑时标题栏消失,所以其中涉及到了scrollview的滑动的监听方法,但是在开发过程中出现了一下问题  依照上边的提示,应该是我的api版本太低了,这个版本scrollview没有滑动的监听方法,所以开始从网络上查询修改的方法,发现自定义一个scrollview控件就可以实现 以下是我新建的自定义sc

934

内存越界一定会导致程序崩溃吗?详解内存越界

本文详细解释了内存越界不一定导致内存越界的问题,全面介绍了C++内存越界的相关内容。

dvlinker的技术专栏 2万+

当ScrollView遇上OnGestureListener

今天模仿qq写了一个界面,使用ScrollView显示联系人列表,使用OnGestureListener实现滑动界面,但是发现其他的fragment都可以正常的处理OnGestureListener,只有联系人列表这个界面无法响应OnGestureListener的处理,经过一点一点的排查,终于发现是ScrollView除了问题。 然后就开始翻遍的各种资料,终于找到解决办法。    应该先覆

ymm 414

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Android Scrollow手指滑动方向监听

最近有个需求,监听Scrollow的滑动方向,找了大半天,大部分的滑动方向监听都是在OnTouch方法里监听手指抬起时间,根据坐标位置来判断方向,与我的需求有点不符合,我需要连续监听滑动方向,即使手指不抬起也要监听滑动方向。废话不多说,直接说原理,监听手势,在onCroll方法里判断坐标方向,根据坐标方向判断手指滑动方向,上代码(Kotlin)

qq_57808875的博客 405

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

揭秘Android界面水平滑动与竖直滑动实现

自从iphone诞生以来,利用触屏手势进行界面滑动就成了智能机程序的标配界面效果了,如果你的程序还只能用Button进行操作,那实在太out了。 现在,我来向大家介绍Android界面滑动的基本实现方法,并解释其中的一些原理。 下面先说下我将介绍的知识点: 1.Activity、Window、View之间的关系; 2.利用ViewFlipper、GestureDetect

小九的专栏 1万+

Android 滑动切换页面 以及屏幕手势

Android 滑动切换页面 以及屏幕手势 博客分类:  Android应用 AndroidvelocitySNS  手机进入智能机时代,触摸屏也已成为主流之势,原来的手机按键也被屏幕点触取代,滑动屏幕操作则相对屏幕点击更能获得用户的青睐,习惯了各种浏览器的鼠标手势、pad等平板的切滑、类似iReader的软件丰富的手势后,是不是也想自己的软件能够用食指炫起来呢,下面就

autumn20080101的专栏 878

android 监听scrollview滚动停止,android ScrollView滚动距离和判断滚动停止状态

20&period; javacript高级程序设计-JSON1. JSON JSON是一种数据格式,存在以下三种类型的值: l 简单值:使用与JavaScript相同的语法,可以在JSON中表示字符串.数值.布尔值和null,不支持 undefined,例如: ...paper 65 :尺度不变特征变换匹配算法&lbrack;转载&rsqb;尺度不变特征变换匹配算法 对于...

weixin_33920303的博客 284

微信小程序+Flask实现医院设备报修系统开发实践

移动应用开发中,前后端分离架构已成为主流技术范式。微信小程序作为轻量级前端载体,结合Python Flask后端框架,能够快速构建企业级业务系统。本文以医院设备报修场景为例,详解如何通过状态机设计实现工单流转控制,利用Redis消息队列完成实时通知推送。在工程实践中,特别关注了图片压缩上传、数据库查询优化等性能关键点,并采用HTTPS加密、接口限流等安全措施保障系统可靠性。该方案已在实际医疗场景中验证,显著提升设备维修效率,为类似行业的移动化办公系统开发提供参考。

weixin_30740295的博客 378

Android界面手势监听

GestureDetector监听 GestureDetector即识别手势,如点击、长按、滑动等手势操作。查看源码里面的方法很多,主要使用的也就那么几个。 onDown(MotionEvent e):按下屏幕的的回调。 onLongPress(MotionEvent e):长按的回调(长按的时间不同设备可能不同) onScroll(MotionEvent e1, MotionEvent e2,...

残梦 964

android触摸滑动监听,Android scrollview如何监听滑动状态

搜索热词ScrollView视图的滚动过程,其实是在不断修改原点坐标。当手指触摸后,ScrollView会暂时拦截触摸事件,使用一个计时器。假如在计时器到点后没有发生手指移动事件,那么ScrollView发送tracking events到被点击的subView;若是在计时器到点后发生了移动事件,那么ScrollView取消tracking自己促发滚动。首先说一下NestedScrollView...

weixin_35531655的博客 1117

android ontouch,【Android】OnTouchListener中的onTouch失效

今天在写程序的时候, 发现了一个奇怪的问题!就是OnTouchListener中的onTouch没有效果,具体点就是,public boolean onTouch(View arg0, MotionEvent arg1) {switch(arg1.getAction()) {//触摸屏幕时刻caseMotionEvent.ACTION_DOWN:break;//触摸并移动时刻caseMotionE...

weixin_29111277的博客 737

WebView加载数据(不是加载网址)的时候,WebView的图片(可以是多张)添加点击事件

在日常开发过程中,有时候会遇到需要在app中嵌入网页,WebView加载数据(不是加载网址)的时候,此时使用WebView实现效果,但在默认情况下是无法点击图片查看大图的,更无法保存图片。本文将就这一系列问题的实现进行说明。 ...

UrasakiNakajima的博客 387

Android - NestedScrollView 内嵌 RecyclerView 滑动监听问题

1. 监听思路NestedScrollView 内嵌 RecyclerView 时,RecyclerView的滑动监听很大可能监听不到,所以我们只能通过对NestedScrollView的监听进行RecyclerView的滑动判断;2. 基本布局别问我为什么有这种布局,你也会遇到的;(通用布局)<android.support.v4.widget.SwipeRefreshLayout

原小明 1万+

Android开发之解决NestedScrollView滑动监听兼容低版本的方法

NestedScrollView的滑动监听目前仅限api23及以上,为了兼容低版本如下自定义方法 可以自定义NestedScrollView即可如下: package cn.net.gfan.world.widget; import android.content.Context; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.suppor

xiayiye5的博客 2058

Android修行手册 - NestedScrollView

专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)

空名先生 8079

解决 Android中用里ScrollView 之后 Activity 中的 onTouchEvent 失效问题

失效的原因是因为 TouchEvent() 首先被 scrollView 中的onTouchEvent() (ScrollView 中也有这个方法) ,而且ScrollView 的 onTouchEvent() 执行完了之后,返回的是 true 所以此时,事件停止传播。即这个时候 Activity 中的onTouchEvent 将不会被回调了。 所以呢。解决的方法是 自定义一个ScrollVie...

{丸の子} 518
上一篇: android开发的问题(一)左右滑动屏幕实现activity的切换
下一篇: 菜鸟学习 设计模式——行为模式(一)
piperzero
博客等级 码龄21年 1377粉丝 504原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值