什么是九宫格?

即是我们常见的手势绘制。一共有9个点,让我们进行绘制手势。我们手动操作的时候,通过是按住第一个点,然后移动到最后一点,然后松开,就完成手势的操作,那么,如果要用自动化代码,来让其自动绘制手势,应该要怎么做呢?

分解九宫格图(放在了一个元素里面)

选一个常用的九宫格,为了方便看到九宫格点与点之间的关系,用了工具将工具放大,并加了网格,可以看到九宫格整个元素的宽、高,加上点与点之间的间隔,大致可以将九宫格的宽、高分为6份,知道之间的关系,就可以大致定位点的位置(知道移动到点里面的范围,即可选中点,不是非常精确地定位操作);如:要移动到第一点,需要到箭头1或者2的位置

下图是九宫格的手势(即经过了那些点)

各个九宫格的位置

  1. 首先要获取九宫格的size ,size包含了宽和高

jiu_size = driver.find_element_by_id("九宫格元素的定位").size

            获取九宫格的起始坐标,再加上与九宫格的位置,

             start= driver.find_element_by_id("九宫格元素的定位").location

  1. 第一点的位置大概占整个宽度的 1/6,第二点占 3/6,第三点占 5/6,都在同一行,高不变

points[1] = (None, start["x"] + jiu_size["width"]*1/6, start["y"]+jiu_size["height"]*1/6)

points[1] = (None, jiu_size["width"]*3/6, jiu_size["height"]*1/6)

points[1] = (None, jiu_size["width"]*5/6, jiu_size["height"]*1/6)

  1. 第四个点占整个高度3/6,宽度不变,变的是高度

points[1] = (None, jiu_size["width"]*5/6, jiu_size["height"]*3/6)

points[1] = (None, jiu_size["width"]*5/6, jiu_size["height"]*5/6)

  1. 第6个点在第三行的第二点,最后一个点在第三行第一个点,变的是宽度

points[1] = (None, jiu_size["width"]*3/6, jiu_size["height"]*3/6)

points[1] = (None, jiu_size["width"]*1/6, jiu_size["height"]*5/6)

app绘制手势密码 、九宫格分解的更多相关文章

  1. Android手势密码--设置和校验

    private void setGesturePassword() { toggleMore.setOnCheckedChangeListener(new CompoundButton.OnCheck ...

  2. Android手势密码实现

    图 二.实现思路: 1. 正上方的提示区域,用一个类(LockIndicator.java)来实现,自定义view来绘制9个提示图标: 2. 手势密码绘制区域,用一个类(GestureContentV ...

  3. iOS-高仿支付宝手势解锁(九宫格)

    概述 高仿支付宝手势解锁, 通过手势枚举去实现手势密码相对应操作. 详细 代码下载:http://www.demodashi.com/demo/10706.html 基上篇[TouchID 指纹解锁] ...

  4. appium_python 实现手势密码

    直接上代码吧: from appium.webdriver.common.touch_action import TouchAction from driver import AppiumTest # ...

  5. HTML5 Canvas简简单单实现手机九宫格手势密码解锁

    原文:HTML5 Canvas简简单单实现手机九宫格手势密码解锁 早上花了一个半小时写了一个基于HTML Canvas的手势解锁,主要是为了好玩,可能以后会用到. 思路:根据配置计算出九个点的位置,存 ...

  6. iOS 九宫格手势密码

    代码地址如下:http://www.demodashi.com/demo/11490.html 一.准备工作 需要准备什么环境 xcode,iOS8+ 本例子实现什么功能 主要实现手势密码设置,验证 ...

  7. Swift 简简单单实现手机九宫格手势密码解锁

    原文:Swift 简简单单实现手机九宫格手势密码解锁 大家可以看到我之前的文章[HTML5 Canvas简简单单实现手机九宫格手势密码解锁] 本文是使用苹果语言对其进行了移植 颜色配色是拾取的支付宝的 ...

  8. 28.【转载】挖洞技巧:APP手势密码绕过思路总结

    说到APP手势密码绕过的问题,大家可能有些从来没接触过,或者接触过,但是思路也就停留在那几个点上,这里我总结了我这1年来白帽子生涯当中所挖掘的关于这方面的思路,有些是网上已经有的,有些是我自己不断摸索 ...

  9. APP手势密码绕过

    之前写的文章收到了很多的好评,主要就是帮助到了大家学习到了新的思路.自从发布了第一篇文章,我就开始筹备第二篇文章了,最终打算在07v8首发,这篇文章我可以保障大家能够学习到很多思路.之前想准备例子视频 ...

随机推荐

  1. 如何将本地代码通过git上传到码云

    ps:同部署到GitHub上一样 http://www.cnblogs.com/pcx105/p/7777932.html

  2. Le Chapitre X

    Il se trouvait dans la région des astéroïdes 325, 326, 327, 328, 329 et 330. Il commença donc par le ...

  3. 分分钟搞懂union与union all

    SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每 ...

  4. Linux主机名域名修改问题

    1.修改 /etc/sysconfig/network  配置文件 vi  /etc/sysconfig/network 修改HOSTNAMEHOSTNAME=new-hostname.domainn ...

  5. ajax GET 传输中文乱码

    关于客户端get传输到服务端乱码解决: <script> //ajakx 传输变量 var xmlhttp; if (window.XMLHttpRequest) {// code for ...

  6. css3动画特效集合

    <!DOCTYPE html> <html> <head> <title></title> <meta charset="u ...

  7. xmlns 实例分析

    <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Apache Soft ...

  8. 第70讲:Scala界面GUI编程实战详解

    今天又学习了王家林老师的scala学习讲座第70讲,关于scala的界面编程,让我们来初步学习一下scala中界面编程的过程. 信息来源于 DT大数据梦工厂微信公众账号:DT_Spark 关注微信账号 ...

  9. Amoeba变形虫

    我们通过路由选择来决定操作时访问那个数据库,而路由的选择方式不外乎以下几种: 1) SpringAOP方式:spring底层配置多个数据源,配置路由(面向切面编程)手工写很多代码(废除) 2) MyS ...

  10. AngularJS $eval $parse

    $eval $parse都可以解析或计算Angular表达式的值. 一.$parse 是一个独立的可以注入的服务,注入就可以使用,它返回一个函数,我们需要显式将表达式求值的上下文传递给该函数.$par ...