Android - Espresso - 滚动到非列表视图项目

2023-11-21

是否有滚动到屏幕上尚未可见的非列表视图项目的通用方法?

如果没有任何预防措施,Espresso 将指示“在层次结构中找不到与 id 匹配的视图......”

我找到了这个答案......这是最好的方法吗?

onView( withId( R.id.button)).perform( scrollTo(), click());

根据scrollToJavaDoc,使用您指定的代码(onView( withId( R.id.button)).perform( scrollTo(), click());),前提条件是:“必须是 ScrollView 的后代”并且“必须将可见性设置为View.VISIBLE”。如果真是这样的话,那就没问题了。

如果它在一个AdapterView,那么你应该使用onData反而。在某些情况下,您可能必须实施AdapterViewProtocol, 如果你的AdapterView行为不端正。

如果两者都不在AdapterView也不是一个孩子ScrollView,那么你就必须实现一个自定义ViewAction.

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

Android - Espresso - 滚动到非列表视图项目 的相关文章

  • 如何从 AAR 依赖项中排除特定资源?

    有没有一种相当简单的方法来实现模块的build gradle文件来指示应排除依赖项中的某些文件 我特别感兴趣的是从 AAR 中排除某些资源 金丝雀泄密 https github com square leakcanary是一个有趣的库 可帮
  • Android 12:如何防止更改手机壁纸时重新启动活动?

    在 Android 12 上 如果我们开启一个活动 进入手机主屏幕更换壁纸 切换回我们的 Activity 该 Activity 重新启动 看起来它与 Material You 主题有关 我想在我的应用程序进入前台时禁用活动的重新启动 有办
  • Espresso - 检查使用按钮按下意图打开哪个活动?

    是否可以跟踪按下某个按钮后打开了哪个 Activity 我有一个测试 其中当单击 按下按钮时 it 向服务器发送请求 直到发送请求时 它打开一个活动 验证是否执行成功在测试中 我需要检查打开的 Activity 是什么 我的测试示例 检查
  • 更改工具栏中汉堡图标的大小?

    我有两个问题 可能很奇怪 但无论如何 我有带有应用程序标题的工具栏 如何将其更改为非徽标的图片 下一个问题 是否可以设置 更改工具栏中汉堡图标的大小 我在下面的下一个代码的帮助下制作了经典的导航抽屉 我也使用了 ActionBarDrawe
  • 将标题设置为操作栏时出现空指针异常

    Error Caused by java lang NullPointerException Attempt to invoke virtual method void android app ActionBar setTitle java
  • Android SDK 中可用的所有“android.intent.action”操作的详尽列表是什么?

    大家好 我想知道标准 Android SDK 中定义的所有 Intent 操作是否有详尽的参考 我正在考虑完整的 android intent action someaction 名称 而不是 Intent 类中定义的方便别名操作的限制列表
  • 如何检测 Google Play 上是否有我的应用程序的更新? [复制]

    这个问题在这里已经有答案了 有没有办法以编程方式检查 Google Play 上我的应用程序是否有更新 以便通知用户 我知道 android google play 有自动通知 但我想使用我自己的通知 弹出消息来更新可用性 有点像 Vibe
  • 当参数具有默认值时,为什么无法使用导航组件将参数传递给片段?

    我正在使用导航组件 但我不明白为什么如果定义了参数 则将参数传递给下面的方法时会出现错误 我正在使用 SafeArgs 只有当我为此参数定义默认值时才会出现此错误 有人可以解释一下为什么会发生这种情况以及如何解决它吗 这是导航图的部分代码
  • Facebook LoginActivity 未正确显示

    我有一个使用 Facebook 登录的应用程序 我有 FacebookSDK 并且使用 com facebook LoginActivity 问题是 在 10 英寸平板电脑上 当显示软键盘时 活动无法正确显示 我使用的是 Samsung G
  • 有没有办法在Android上创建一个三角形按钮?

    有没有办法创建一个三角形的按钮 我知道我可以将三角形图像作为背景 但这将使三角形之外的区域可单击 有没有办法固定按钮角 X 和 Y 以便我可以将其变成三角形 您可以覆盖OnTouch http developer android com r
  • onTouchEvent()中如何区分移动和点击?

    在我的应用程序中 我需要处理移动和单击事件 一次点击是由一个 ACTION DOWN 操作 多个 ACTION MOVE 操作和一个 ACTION UP 操作组成的序列 理论上 如果您收到 ACTION DOWN 事件 然后收到 ACTIO
  • 模拟器:进程已完成,退出代码为 134(被信号 6:SIGABRT 中断)

    我最近刚刚开始在 Mac 上下载 Android Studio 版本 3 0 1 但收到以下错误 模拟器 进程已完成 退出代码为 134 被信号 6 SIGABRT 中断 我按照 Android Studio 教程操作并能够运行模拟器 但在
  • 如何在 WebView 中添加 JavaScript 函数并稍后在提交 reCAPTCHA 时从 HTML 调用它

    我在 WebView 中添加一个 JavaScript 函数 如下所示 Kotlin val webView findViewById R id webview as WebView webView getSettings setJavaS
  • Android:如何使视图增长以填充可用空间?

    这看起来很简单 但我不知道该怎么做 我有一个带有 EditText 和两个 ImageButtons 的水平布局 我希望 ImageButtons 具有固定大小 并且 EditText 占据布局中的剩余空间 如何才能做到这一点
  • 如何在新标签 android webview 中打开链接? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我已经使用 webview 创建了一个 android 应用程序来显示我的网站 我什至想添加在新选项卡中打开链接的功能 但我找不到任何
  • 带有空白白屏的 WebView

    我在 DialogFragment 中有一个 webview 它使用以下方式显示文档和 PDF它可以进行几次尝试 但如果用户尝试频繁打开和关闭对话框 webview 将显示空白屏幕 我已经尝试了所有的线程link1 https stacko
  • 如何在android sdk上使用PowerMock

    我想为我的 android 项目编写一些单元测试和仪器测试 然而 我遇到了一个困扰我一段时间的问题 我需要模拟静态方法并伪造返回值来测试项目 经过一些论坛的调查 唯一的方法是使用PowerMock来模拟静态方法 这是我的 gradle 的一
  • ormlite 将日期读取为 'yyyy-MM-dd'

    我需要读取给我的 sqlite 数据库 因此我无法更改表中的日期格式 yyyy MM dd 当我尝试使用 ormlite 为我生成对象时 使用以下注释 DatabaseField columnName REVISION DATE dataT
  • Amazon IAP 不会调用 onPurchaseResponse

    我有一个 Android 应用程序 它使用 IAP 我正在发送PurchasingManager initiateGetUserIdRequest 并得到用户识别成功 in onGetUserIdResponse 得到回复后Purchasi
  • Android:获取最新意图

    如何获取发送到活动的最后一个意图 的文档onNewIntent 建议我需要做这样的事情 class MyActivity public void onNewIntent Intent intent setIntent intent reac

随机推荐

  • 使用 PHP 提取 Excel 文件 (xls) 中的图片/图像

    我有一个电子表格 想使用 PHP 导入 我可以使用 PHPExcel 导入单元格数据 但无法弄清楚如何使用电子表格中的图像 有没有办法做到这一点 然后使用 PHP 中的图像保存到服务器等 非常感谢您的帮助 Update mark baker
  • 使用 git 子树检出特定标签

    我可以在子树中使用标签吗 以下是具体问题 我有一个 git 存储库 其中包含一个外部存储库作为子树 我可以添加此外部存储库并从此存储库中签出特定分支 和git subtree pull prefix
  • 启动 AVD 模拟器 avd PANIC:无法打开:avd - Ubuntu 13.10

    我在 Ubuntu 上使用 android sdk 已经有一段时间了 最近 我将其升级到Ubuntu 13 10 从那时起 每当我尝试启动 Android 虚拟设备时 我都会收到此错误 Starting emulator for AVD A
  • 詹金斯 + qUnit

    如何轻松地将 Jenkins 与 qUnit 集成 我将使用真正的浏览器 如 Firefox 和 Chrome 来运行测试 我的服务器运行在 RedHat 6 1 Linux 上 我想我已经拥有所有需要的插件 库 但我仍然不知道如何使其工作
  • 赋值表达式和 volatile

    我似乎有一个合理的理解volatiles一般来说 但有一个看似晦涩的案例 我不确定事情应该如何按照标准进行工作 我已经阅读了 C99 的相关部分以及 SO 上的十几个或更多相关帖子 但找不到这种情况下的逻辑或解释这种情况的地方 假设我们有这
  • pandas 性能:列选择

    我今天观察到 选择两列或更多列数据框可能比仅选择一列慢得多 如果我使用 loc 或 iloc 选择多个列 并使用 list 传递列名或索引 那么与使用 iloc 选择单列或多列 但没有传递列表 相比 性能会下降 100 倍 例子 df pd
  • 扭曲:延迟重复触发?

    Deferred是在 Twisted 中进行异步处理的好方法 然而 顾名思义 它们用于延迟计算 仅运行和终止一次 触发回调一次 如果我进行重复计算 例如单击按钮 怎么办 有没有Deferred 类似可以重复触发的对象 每当触发时调用附加到它
  • 如何判断数据包是否是 TCP Keep-Alive?

    Wireshark 和网络监视器为此提供了过滤器 但我想知道如何通过查看标头或有效负载来推断数据包是 TCP Keep Alive 还是 Keep Alive Ack TCP 保活数据包是一个 ACK 其序列号设置为比序列号小 1 连接的当
  • 将unix时间戳转换为H2时间戳

    如何转换 unix 时间戳值1348560343598 to H2 Timestamp 我的一个表包含这些 un ix 时间戳BIGINT 19 列 我需要将它们转换为类型的列TIMESTAMP 好的 使用以下公式有效 select DAT
  • 不了解在系统架构中的何处创建 IoC 容器

    假设我有以下 4 个 net 程序集 Winform用户界面 商业逻辑 SQL Server 数据访问 实现 IRepository 通用接口 IRepository等的定义 我的业务逻辑 2 使用构造函数依赖注入通过 IRepositor
  • Python 的 SSH 模块

    我必须在远程计算机上完成一项工作 使用我的 Web 服务器 大约需要 10 分钟 我用过pxsshpython 中的模块相同 但它给了我 超时错误 非阻塞 现在 我正在使用paramiko但一旦发出指令 它就会回来 我希望网络服务器等待作业
  • UIImagePickerController 导航栏色调颜色不适用于 iOS 13

    我正在展示一个模态控制器 它是 UIImagePickerController 我正在尝试改变UIImagePickerController导航栏的色调颜色 在 iOS13 之前 这工作得很好 imagePickerController n
  • sqlserver中日期时间和时间戳之间的区别? [复制]

    这个问题在这里已经有答案了 有什么区别Timestamp and DatetimeSQL 服务器 我认为这两种格式都能够存储日期 时间 那么 他们之间的区别到底在哪里呢 But Timestamp无法存储日期 时间信息 还是有什么区别 Ac
  • 如何在 CameraX 上的相机预览中裁剪图像矩形

    我有一个自定义相机应用程序 它有一个居中的矩形视图 如下所示 当我拍照时 我想忽略矩形之外的所有内容 这是我的 XML 布局
  • Internet Explorer 上的 JSON 解析错误

    我正在使用 jscript 从 Flickr 检索 JSON 数据 除 IE 外 所有浏览器均可 100 正常工作 我正在使用 jquery every 函数为 IE 调用此特定函数 some code if browser msie wi
  • 如何将通用类型的类对象转换为该类型的特定实例

    我有一个通用接口 让我们调用它GenericInterface
  • 如何使用 vue-cli create 修复错误“没有这样的文件或目录错误”

    我安装了 vue cli 3 我尝试使用 vue create 创建一个 vue 应用程序 但出现 no such file 错误 vue create hello world bash usr local bin vue No such
  • Agda:用数字解析字符串

    我正在尝试用 Agda 中的自然数解析字符串 例如 结果stringListTo 1 2 3 应该Just 1 2 3 我当前的代码不太正确 或者无论如何都不太好 但它可以工作 但是它返回类型 Maybe List Maybe 问题是 功能
  • Python 类型转换

    在 python 中将 int long double 转换为字符串的最佳方法是什么 反之亦然 我正在循环遍历一个列表并将 long 传递给一个应该转换为 unicode 字符串的字典 I do for n in l my key n 0
  • Android - Espresso - 滚动到非列表视图项目

    是否有滚动到屏幕上尚未可见的非列表视图项目的通用方法 如果没有任何预防措施 Espresso 将指示 在层次结构中找不到与 id 匹配的视图 我找到了这个答案 这是最好的方法吗 onView withId R id button perfo