zoukankan      html  css  js  c++  java
  • app绘制手势密码 、九宫格分解

    什么是九宫格?

    即是我们常见的手势绘制。一共有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)

  • 相关阅读:
    对成本的理解
    Oracle ERP中帐户类型和会计科目分类的关系---待完善
    固定资产调整对资产折旧的影响
    20201111 eset internet security keys | NOD 32 keys | ESET MOBILE LICENSE KEYS
    一些常用到的windows ISO download 文件下载资源
    读《改变心理学的40项研究》有感,之一
    有归从,可与有。2019.07.09.
    灼钓鱼炭 2019.07.08.
    人居一世间, 忽若风吹尘 2019.07.07.
    exported wechat's voice! 成功导出微信语音! 2019.07.06.
  • 原文地址:https://www.cnblogs.com/cuitang/p/10118594.html
Copyright © 2011-2022 走看看