《iOS 6核心开发手册(第4版)》——1.7节秘诀:针对位图进行测试

简介:

本节书摘来自异步社区《iOS 6核心开发手册(第4版)》一书中的第1章,第1.7节秘诀:针对位图进行测试,作者 【美】Erica Sadun,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.7 秘诀:针对位图进行测试
iOS 6核心开发手册(第4版)
不幸的是,大多数视图都不属于简单的几何形状,因此不能使碰撞测试像秘诀1-5中那样直观。例如,图1-1中所示的花朵提供了不规则的界限和变化的透明度。对于复杂的艺术作品,它有助于针对位图测试触摸。位图提供了关于基于图像的视图内容的逐字节的信息,允许测试触摸是否碰到了图像的实心部分,或者是否应该穿透到下面的任何视图上。

秘诀1-6从UIImageView中提取了一幅图像位图。它假定使用的图像提供了正在处理的视图的逐像素的表示。当扭曲视图时(通常通过调整框架的大小或者应用变换),将相应地更新数学信息。可以通过CGPointApplyAffineTransform()对CGPoint执行变换,以处理缩放和旋转变化。将艺术作品与实际的视图像素保持为1:1的比例,这可以简化查找以及避免任何混乱的数学信息。可以恢复正在处理的像素,测试它的Alpha级别,以及确定触摸是否碰到了视图的实心部分。

这个示例使用截止值85,这对应于最小的Alpha级别33%(即85/255)。这个自定义的pointInside:方法把Alpha级别低于33%的任何像素都视作是透明的,这是随意而定的,可以使用适合于实际的GUI需要的任何级别(或者其他测试)。

注意:
除非需要像素完美的触摸检测,否则可以缩小位图,使之使用较小的内存,并相应地调整检测数学信息。


c4dda61fab57fba42b73c5d547ce54e2c8651ba5
相关文章
|
3月前
|
测试技术 Linux 虚拟化
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
详细的VMware虚拟机安装macOS Big Sur的保姆级教程,包括下载VMware和macOS镜像、图解安装步骤和遇到问题时的解决方案,旨在帮助读者顺利搭建macOS虚拟机环境。
136 3
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
|
3月前
|
测试技术 开发工具 iOS开发
iOS自动化测试方案(三):WDA+iOS自动化测试解决方案
这篇文章是iOS自动化测试方案的第三部分,介绍了在没有MacOS系统条件下,如何使用WDA(WebDriverAgent)结合Python客户端库facebook-wda和tidevice工具,在Windows系统上实现iOS应用的自动化测试,包括环境准备、问题解决和扩展应用的详细步骤。
252 1
iOS自动化测试方案(三):WDA+iOS自动化测试解决方案
|
3月前
|
测试技术 数据安全/隐私保护 iOS开发
iOS自动化测试方案(四):保姆级搭建iOS自动化开发环境
iOS自动化测试方案的第四部分,涵盖了基础环境准备、iPhone虚拟机设置、MacOS虚拟机与iPhone真机的连接,以及扩展问题和代码示例,确保读者能够顺利完成环境搭建并进行iOS自动化测试。
259 0
iOS自动化测试方案(四):保姆级搭建iOS自动化开发环境
|
3月前
|
测试技术 虚拟化 iOS开发
iOS自动化测试方案(二):Xcode开发者工具构建WDA应用到iphone
这篇文章是iOS自动化测试方案的第二部分,详细介绍了在Xcode开发者工具中构建WebDriverAgent(WDA)应用到iPhone的全过程,包括环境准备、解决构建过程中可能遇到的错误,以及最终成功安装WDA到设备的方法。
182 0
iOS自动化测试方案(二):Xcode开发者工具构建WDA应用到iphone
|
3月前
|
测试技术 开发工具 虚拟化
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
这篇文章提供了一份保姆级的教程,指导如何在MacOS虚拟机上安装Xcode,包括环境准备、基础软件安装以及USB扩展插件的使用,以实现iOS自动化测试方案的第一步。
113 0
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
|
3月前
|
测试技术 Swift iOS开发
探索iOS自动化测试:使用Swift编写UI测试
【8月更文挑战第31天】在软件开发的海洋中,自动化测试是保证船只不偏离航线的灯塔。本文将带领读者启航,深入探索iOS应用的自动化UI测试。我们将通过Swift语言,点亮代码的灯塔,照亮测试的道路。文章不仅会展示如何搭建测试环境,还会提供实用的代码示例,让理论知识在实践中生根发芽。无论你是新手还是有经验的开发者,这篇文章都将是你技能提升之旅的宝贵指南。
|
6月前
|
Android开发 数据安全/隐私保护 iOS开发
ios和安卓测试包发布网站http://fir.im的注册与常用功能
ios和安卓测试包发布网站http://fir.im的注册与常用功能
276 0
ios和安卓测试包发布网站http://fir.im的注册与常用功能
|
6月前
|
iOS开发
iOS自动混淆测试处理笔记
iOS自动混淆测试处理笔记
27 0
|
6月前
|
iOS开发
  iOS 自动混淆测试处理笔记
  iOS 自动混淆测试处理笔记
|
6月前
|
Java 测试技术 API
安卓APP和iOS APP在测试上的区别是什么?
安卓APP和iOS APP在测试上的区别是什么?
189 0

热门文章

最新文章