手势操作

AJ学IOS 之微博项目实战(6)导航控制器NavigationController 的滑动回退功能实现

大兔子大兔子 提交于 2019-12-28 04:59:08
AJ分享,必须精品 一:效果 第二篇里面写了怎样自定义navigation实现自定义的导航控制器左右按钮样式,但是当我们自己实现后,系统自带的向右边滑动来实现回退的功能就不能用了。 这里主要实现滑动回退功能 。 二:代码实现思路 首先 在 NYNavigationController.m中放一个popDelegate来放置要更改的手势代理对象 @interface NYNavigationController ()<UINavigationControllerDelegate> @property (nonatomic, strong) id popDelegate; @end 重写 UINavigationControllerDelegate 的方法 - (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated viewDidLoad中设置代理方法,并且预先设置手势代理用来还原 - (void)viewDidLoad { [super viewDidLoad]; //记住手势代理 用来还原 _popDelegate = self

关于移动端手势滑动和上拉加载下拉刷新简单模拟笔记

萝らか妹 提交于 2019-12-26 02:23:43
本人接触前端不久,写的不好的请多多指教,欢迎指出 最近做到一个需求需要实现移动端的手势操作,在网上有找到不少不错的插件(PS:就不打广告了,一搜一大堆) 插件用起来确实不错,不过自己想研究下,便写了一个demo,实现了上拉、下拉触发,及左右手势滑动触发 上拉、下拉触发用了 $(window).scroll() //当滚动条滚动时触发 scrollTop()(滚动条距离顶部的高度) $(document).height(当前页面的总高度) $(this).height(当前可视的页面高度); 具体请看下面附上代码 左右手势滑动触发 使用了js的addEventListener监听, 分别监听-touchstart事件,touchmove事件,touchend事件,主要获取clientX,clientY属性 touchstart:当鼠标点击屏幕时触发 touchmove:当鼠标在屏幕移动时触发 touchend:当鼠标离开屏幕时触发 属性:event.touches[0].clientX,event.touches[0].clientY获取x,y坐标 直接上代码,请多指教(PS:请使用移动模式调试) <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf

关于Flutter的点击事件

↘锁芯ラ 提交于 2019-12-25 03:04:46
常用的点击事件有InkWell(内置水波纹效果)和GestureDetector(手势操作),其他无点击事件操作的控件就需要用以上去包裹进行操作,不过还是多根据实际需要去选择使用什么控件吧,下面简略的摘录一下他人对GestureDetector的一些属性详解。 原文链接 一,概述   移动应用中一个必不可少的环节就是与用户的交互,在Flutter中提供的手势检测为GestureDetector。 Flutter中的手势系统分为二层: 第一层是触摸原事件(指针) PointerDownEvent:用户与屏幕接触产生了联系 PointerMoveEvent:手指已从屏幕上的一个位置移动到另一个位置 PointMoveEvent:指针停止接触屏幕 PointerUpEvent:用户已停止接触屏幕 PointerCanceEvent:此指针的输入不再指向此应用程序 第二层是手势事件(轻击,拖动,缩放) 自带交互的控件监听 RaisedButton、 IconButton、 OutlineButton、 Checkbox、 SnackBar、 Switch等     不自带交互的控件监听 用GestureDelector进行手势检测 用Dismissible实现滑动删除     二,手势事件 1.自带交互的控件 在Flutter中,自带如点击事件的控件有RaisedButton

Android事件分发机制——Touch事件

对着背影说爱祢 提交于 2019-12-24 04:05:27
1. 简介 先来看一个表: Touch 事件相关方法 功能 Activity ViewGroup View public boolean dispatchTouchEvent (MotionEvent ev) 事件分发 Yes Yes Yes public boolean onInterceptTouchEvent (MotionEvent ev) 事件拦截 No Yes No public boolean onTouchEvent (MotionEvent ev) 事件响应 Yes Yes Yes 从表中可以看出,Activity、ViewGroup、View都关心Touch事件,其中ViewGroup的关心的事件有三个:onInterceptTouchEvent、dispatchTouchEvent、onTouchEvent。Activity和View关心的事件只有两个:dispatchTouchEvent、onTouchEvent。也就是说只有ViewGroup可以对事件进行拦截。 Android的UI结构是一个树形结构,树的最顶层(根节点)是Activity内包含的一个ViewGroup,下面有若干个ViewGroup节点,每个节点下面又有若干个ViewGroup节点或者View节点,以此类推。Touch事件的传递和处理与这种结构密切相关

推荐三款自己使用过的鼠标手势插件

|▌冷眼眸甩不掉的悲伤 提交于 2019-12-20 01:56:41
随着现在的浏览器变得越来越简洁,越来越快捷,浏览器上面的按钮也会变得越来越少,但是浏览器的功能确实越来越强大了,我们需要一种新的方式来提供浏览器操作体验那就是鼠标手势操作。在Chrome浏览器中安装了鼠标手势插件以后可以设置多种手势 来快速对Chrome进行操作。今天小编就为大家整理了现在比较流行的4款chrome浏览器鼠标手势插件,希望有大家心水的那一款。 NO1: Gestures for Google Chrome 推荐指数 :★★★★★ 功能概述 : Gestures for Google Chrome,是一款鼠标手势就不用我多解释了吧,安装这款插件后,Chrome便能在鼠标的“指挥”下完成很多特定操作。除了能够显示出鼠标的轨迹,一个很人性化的设计就是提供了手势功能提示,于是我们便可以在操作时随时掌握即将发生的任务。而且这款插件还有一个特别之处,那就是实现了超级拖拽(即利用拖拽在新标签页中打开链接或文本搜索),进入“扩展程序”→“Chrome Gestures”→“选项”后即可找到这项功能。此外我们也能对默认手势进行修改,甚至为“链接”或“文字”拖拽指定不同的动作(超级拖拽) 使用方法 : 1. 至本站下载Gestures for Google Chrome到本地,是一个扩展名为 .crx 的文件。它是一个浏览器扩展程序。具体安装流程可参照本站文章:

石头剪刀布AI进化版

拜拜、爱过 提交于 2019-12-13 07:54:17
石头剪刀布AI进化版 虽然人工智能目前以席卷之势,渗透各行各业,但是大多数人还处在“百姓日用而不知”的状态里,作为一个创客教师,对于新技术总是有与生俱来的敏感嗅觉,同时也希望把这些新内容教给我的学生,人工智能到底怎么玩?我的学生可以玩的转么?我的学生年龄都比较小,只是学过一些scratch,这样的水平可以玩AI么?带着这些疑问,笔者开始了自己的探索之路,在看了编程猫、mind+、mblock、Kittenblock、machine learning for kids等等的软件及网站之后,终于找到了一个看起来不那么复杂的又有AI插件的网站——广问AI (open.thinklandai.com)。 今天笔者就带领大家一起来用AI制作一个中国人小时候都会玩的游戏——石头剪刀布,说起这个石头剪刀布,它经常会作为我get新技能的第一个试水案例,比如会玩scratch之后我第一个做的是它,会玩microbit之后我第一个做的也是它,这次AI的版本当然也要做一次啦。 在开始制作之前,需要注册并用邮件激活,否则无法看到我们需要使用的AI插件,另外推荐大家使用Google Chrome浏览器,其他浏览器似乎会有看不到工程模板的情况。 顺利注册完毕之后,回到主页开始编程,进入后是标准的scratch3.0界面,唯一区别是菜单栏里多了一个叫工程模板的项目。 这里面藏着十个案例

EZ430 Chronos 开发设想 :广义手势语言

爱⌒轻易说出口 提交于 2019-12-12 17:54:04
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> EZ430 Chronos 开发设想 :广义手势语言 终于收到了代购的开发套件,这几天都在思考究竟用它来开发一款什么样的有趣应用呢? 终于在昨天确定了开发设想:手势语言,充分利用套件的3轴加速度感应器,捕捉手势数据,再根据预先设定的对应模型翻译成字符、数字或者指令,可以把翻译结果保留在手表内存/FLASH里,等到联机时再用RF传到PC上,也可以直接就用RF同步传送到PC上。 为什么起名为“广义手势语言”,而不是“手势交互”或者“手势输入”?因为准备设计一个比较全面的手势语言系统,类似于手语之类的,当然,还是一步步来,不可能一次就搞定,分阶段进行,最终能够跟实际的自然语言一一对应。 这种手势语言跟MCU结合紧密,比如可以直接利用手势来输入程序指令(好像需要编译才可以运行,后面再关注细节),可以直接在手表上把特定的三轴坐标翻译成指令来操作MCU的底层硬件(比如启动一个程序、进入程序的菜单进行设置,确认设置结果,等等),也可以利用手势来开启/关闭无线传输,还可以用手势来代替按钮的功能,调用不同的内置程序,修改设置什么的,比如调整时间,调整日期。 现阶段主要以手腕上可以方便佩戴的 chronos 为手势输入源,后续有一定进展后计划使用手套式传感器,每个手指头上都放置一个类似的三轴传感装置,因为手指的移动范围更灵活

Android触控屏幕Gesture(GestureDetector和SimpleOnGest...

你说的曾经没有我的故事 提交于 2019-12-10 08:20:24
1、当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等等,我们知道View类有个View.OnTouchListener内部接口,通过重写他的onTouch(View v, MotionEvent event)方法,我们可以处理一些touch事件,但是这个方法太过简单,如果需要处理一些复杂的手势,用这个接口就会很麻烦(因为我们要自己根据用户触摸的轨迹去判断是什么手势)Android sdk给我们提供了GestureDetector(Gesture:手势Detector:识别)类,通过这个类我们可以识别很多的手势,主要是通过他的onTouchEvent(event)方法完成了不同手势的识别。虽然他能识别手势,但是不同的手势要怎么处理,应该是提供给程序员实现的,因此这个类对外提供了两个接口:OnGestureListener,OnDoubleTapListener,还有一个内部类SimpleOnGestureListener,SimpleOnGestureListener类是GestureDetector提供给我们的一个更方便的响应不同手势的类,这个类实现了上述两个接口(但是所有的方法体都是空的),该类是static class,也就是说它实际上是一个外部类。程序员可以在外部继承这个类,重写里面的手势处理方法。

Android触控屏幕Gesture(GestureDetector和SimpleOnGest...

被刻印的时光 ゝ 提交于 2019-12-10 08:02:42
1、当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等等,我们知道View类有个View.OnTouchListener内部接口,通过重写他的 onTouch ( View v, MotionEvent event)方法,我们可以处理一些touch事件,但是这个方法太过简单,如果需要处理一些复杂的手势,用这个接口就会很麻烦(因为我们要自己根据用户触摸的轨迹去判断是什么手势)Android sdk给我们提供了GestureDetector(Gesture:手势Detector:识别)类,通过这个类我们可以识别很多的手势,主要是通过他的onTouchEvent(event)方法完成了不同手势的识别。虽然他能识别手势,但是不同的手势要怎么处理,应该是提供给程序员实现的,因此这个类对外提供了两个接口:OnGestureListener,OnDoubleTapListener,还有一个内部类SimpleOnGestureListener,SimpleOnGestureListener类是GestureDetector提供给我们的一个更方便的响应不同手势的类,这个类实现了上述两个接口(但是所有的方法体都是空的),该类是static class,也就是说它实际上是一个外部类。程序员可以在外部继承这个类,重写里面的手势处理方法。

Chrome插件:请开始你的表演,smartUp手势骚操作

空扰寡人 提交于 2019-12-09 22:55:43
故事背景 一天,测试妹子跑来找我帮她查东西,于是打开Chrome就是一顿操作猛如虎,东西还没查到,后面传来妹子的惊呼:哇!xxx,你的电脑还能这样操作吗,用鼠标随便乱划都能操作浏览器的前进、后退、刷新吗?是什么牌子的电脑啊? 哈哈,其实这并非是系统自带的功能,而是我们今天的主角 smartUp手势 插件的功劳。这是个啥玩意儿呢? 其实它就是一个浏览器插件,官方是这样介绍的: 一个更好的手势类扩展。功能包括:鼠标手势,简易拖曳,超级拖曳,摇杆手势和滚轮手势。 也就是说可以通过鼠标手势实现我们对浏览器的一些操作,比如向下向上滚动、页面刷新、重新打开关闭的标签页等等。 如何使用? 首先我们需要自备Chrome浏览器,安装手势插件的方法有两种,待我慢慢道来。 方法一 打开Chrome-》设置-》更多工具-》扩展程序(E)-》打开Chrome应用商店,搜索smartUp手势,就能搜到改插件,然后 添加至Chrome ,会弹框询问是否添加该插件,允许添加即可。 下载完成后Chrome会自动安装插件,安装成功会跳转至smartUp设置页面,我们可以的根据自己喜好配置 方法二 如果由于不可抗拒的原因我们无法访问Chrome商店, 关注【优了个秀】 ,回复 66 获取离线安装包,将离线包下载到本地后解压缩,打开Chrome-》设置-》更多工具-》扩展程序(E)-》打开开发者模式,选择