按边界/坐标单击

2023-12-19

我知道浓缩咖啡有可能以这种方式点击UiAutomator 可以 https://stackoverflow.com/questions/20519905/uiautomator-click-on-a-imagebutton-with-no-text-or-content-desc。 (x 和 y 坐标)我已阅读文档,但似乎找不到它。任何帮助表示赞赏。谢谢

Edit
我发现这个链接 https://android-test-kit.googlecode.com/git/docs/javadocs/apidocs/com/google/android/apps/common/testing/ui/espresso/action/Tapper.html,但没有如何使用它的示例,我主要关心的是UiController是或如何使用它。


浓缩咖啡有GeneralClickAction http://code.google.com/p/android-test-kit/source/browse/espresso/lib/src/main/java/com/google/android/apps/common/testing/ui/espresso/action/GeneralClickAction.java,这是ViewActions的底层实现click(), doubleClick(), and longClick().

The GeneralClickAction的构造函数需要一个CoordinatesProvider作为第二个参数。 所以基本的想法是创建一个静态的ViewActiongetter 提供自定义CoordinatesProvider。像这样的事情:

public static ViewAction clickXY(final int x, final int y){
    return new GeneralClickAction(
        Tap.SINGLE,
        new CoordinatesProvider() {
            @Override
            public float[] calculateCoordinates(View view) {

               final int[] screenPos = new int[2];
               view.getLocationOnScreen(screenPos);

               final float screenX = screenPos[0] + x;
               final float screenY = screenPos[1] + y;
               float[] coordinates = {screenX, screenY};

               return coordinates;
            }
        },
        Press.FINGER);
}

关于 Espresso 的一般建议:不要寻找文档(实际上没有),而是查看源代码。 Espresso 是开源的,源代码本身质量非常好。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

按边界/坐标单击 的相关文章

  • Android正则表达式-返回匹配的字符串

    在我的 Android 项目中 我有一个正则表达式和一个字符串 其中应该有匹配的表达式 问题是我只找到了一个matches 方法 返回布尔值 有没有什么东西 只返回匹配的字符串 例如 如果我的字符串是 中午 12 点去商店 我想检查该字符串
  • 以编程方式在 Android 上运行 ps shell 命令

    我正在尝试在我的 Android 应用程序上执行 ps 命令 如下所示 try Process process Runtime getRuntime exec ps BufferedReader reader new BufferedRea
  • 使用 shouldInterceptRequest 阻止数据加载

    虽然这个问题已经被问过好几次了 但与我的问题真正相关的唯一问题是这个 我可以使用 shouldInterceptRequest 来阻止 Android 中的特定调用吗 https stackoverflow com questions 16
  • Android 使用带有空格的键访问 Firebase

    这可能是一个愚蠢的问题 但我在谷歌的 firebase 网站上找不到任何示例 如果我在 firebase 数据库中有一个密钥 First Name 然后我打电话 FirstNameClass firstName dataSnapshot g
  • SDKmanager:警告:无法创建设置。 java.lang.IllegalArgumentException

    我尝试在 Ubuntu 上安装 androidSDK 但是当我尝试在 tools bin sdkmanager 文件夹上运行 SDK 管理器时 我收到以下消息 我的 Ubuntu 最近安装了 除了 Java 8 和 Android Stud
  • android:onClick 在 xml 中的 menuitem 上设置

    亲爱的 我们可以在 xml 中将 onclick 与菜单项一起使用吗 就像下面一样 我尝试过但它不起作用 menu menu
  • ALBUM_ART列从API 29等开始被弃用,如何获取路径?

    我们目前正在使用以下方式获取专辑封面的路径 MediaStore Audio AlbumColumns ALBUM ART 并且正在成功获取路径 但 Pixel 3a Android 10 除外 经过一番研究 API 29 及以上版本已弃用
  • 域不包含在应用程序域中

    我几天来就遇到了这个问题 以前它运行得很好 但现在显示了上述错误 我无法找出我缺少的内容 如何解决这个问题 image setting image 的一部分费率审查 public static String BASE DOMAIN http
  • 如何在android中播放来自URL的流媒体视频?

    我想在 android 中播放网站上的流媒体视频 例如 我想播放来自以下网址的流视频 http florotv com canal2 html http florotv com canal2 html 使用 URL Helper 我已经能够
  • 透明模糊视图模糊了下面的布局

    我有一个已设为透明的 Linearlayout 现在我正在寻找一种方法来赋予它模糊效果 因此它下面的内容会变得模糊 就像 Windows 7 Aero 外观一样 参见屏幕截图 我知道你可以做这样的模糊效果 getWindow addFlag
  • 在 Android 上以编程方式输入 *#*#4636#*#* 等密码

    在许多 Android 设备上 您可以通过键入以下内容从 电话 应用程序进入秘密设置菜单 4636 http technology headlines com 2010 09 17 4636 android secret codes htt
  • 将mapView缩放到osmdroid上的某个边界框

    我想使用 ZoomToBoundingBox 方法将地图缩放到特定的边界框 该方法除了以缩放级别 0 显示地图外什么也不做 在mapView java源代码中我发现了这个 缩放地图以尽可能靠近地包围指定的边界框 必须在显示布局完成后调用 否
  • 如何从内存中清除动态创建的视图?

    我试图从记忆中清除一些观点 情况是这样的 我有一个活动 我将其称为 A 另一个称为 B 现在 我在 Activity A 中按下一个按钮 该按钮调用 Activity B 动态创建大量视图 之后 我按后退按钮返回到活动 A 多次重复这两个步
  • 从设备获取日期并将其转换为 GMT+4

    我正在尝试查找 Android 手机的时区 因为我想获取日期对象 但我想要 GMT 4 格式 我看到的所有其他答案都会转换来自 API 请求的时间 其时区已知 我怎样才能做到这一点 其他方法可能是将服务器传来的 GMT 4 时间转换为我设备
  • 画廊新媒体如何播放?

    我试图收到有关添加到手机图库的新图片或视频的通知 我需要获取新媒体的 URI 目的是让我可以自动备份它 因此 我需要一个在后台设置的寄存器来连续侦听或检查添加到图库的新媒体 并捕获 Uri 这过去是通过广播接收器完成的 例如
  • Android Studio - 程序类型已存在:com.google.android.gms.internal.measurement.zzwp

    昨天 我的应用程序运行良好 今天 不知道为什么 重新打开Android Studio后 应用程序就无法编译了 显示的错误是 Program type already present com google android gms intern
  • Android 位图内存问题 - 错误:8294416 字节分配内存不足

    我目前正在开发一个讲述故事的应用程序 该故事包含 场景 其中包含通过 ImageView 显示的多个 JPEG 和 PNG 文件 我创建 ImageView 并通过以下函数将其添加到布局中 private ImageView newImag
  • 如何为Android编译最新的FFmpeg库?

    努力将当前 FFmpeg 的工作和一般最佳实践构建在一起 似乎没有最新的文档或教程 现有的内容充满了过时的链接或不起作用的构建脚本 构建独立的 NDK 工具链 下载最新的NDK并运行make standalone toolchain py
  • Android:Html 锚链接仅在 Web 视图中有效一次

    在使用锚链接加载 html 内容时 我在 webview 中遇到一些奇怪的问题 以下代码非常适合锚标记 但是只有一次 第二次当我按下锚标签时不工作 protected void onCreate Bundle savedInstanceSt
  • 如何将 Three.js 代码实施到 Android 移动应用程序中?

    我用 HTML CSS 和 JS 编写了 Three js 场景的代码 显示 3D 头部模型及其上的标记 它适用于我的 Angular 项目 我还可以通过将 HTML 代码添加到 Web 视图中 使其在适用于 Android 和 iOS 的

随机推荐