如何查找具有特定标签(属性)的视图列表

2023-11-23

我为 UI 小部件设置了标签,并且想要检索具有特定标签的视图列表。使用View.findViewWithTag("test_tag")只返回一个视图,而不是所有支持标签的视图。

任何帮助表示赞赏。


您不应期望从此方法中获得视图数组,因为方法签名本身表明它将返回单个视图。

public final View findViewWithTag (Object tag) 

但是,您可以做的是将布局设置为ViewGroup然后迭代所有子视图,通过查找其标签来找出所需的视图。例如:

/**
 * Get all the views which matches the given Tag recursively
 * @param root parent view. for e.g. Layouts
 * @param tag tag to look for
 * @return List of views
 */
public static List<View> findViewWithTagRecursively(ViewGroup root, Object tag){
    List<View> allViews = new ArrayList<View>();

    final int childCount = root.getChildCount();
    for(int i=0; i<childCount; i++){
        final View childView = root.getChildAt(i);

        if(childView instanceof ViewGroup){
          allViews.addAll(findViewWithTagRecursively((ViewGroup)childView, tag));
        }
        else{
            final Object tagView = childView.getTag();
            if(tagView != null && tagView.equals(tag))
                allViews.add(childView);
        }
    }

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

如何查找具有特定标签(属性)的视图列表 的相关文章

  • 如何获取之前的碎片?

    为了在我的应用程序中重用某些片段 我需要知道哪个片段是返回堆栈上的第二个片段 为了做到这一点 我正在使用getFragmentManager getFragments 显示以下错误 但有效 FragmentManager getFragme
  • Android webview 滚动不起作用

    我正在尝试在网络视图中向下滚动到页面底部 我正在使用谷歌在其教程中提供的网络视图示例 我正在使用这行代码来尝试滚动 但它不起作用 mWebView pageDown true 关于如何使其以编程方式滚动有什么建议吗 谢谢 public cl
  • Android:使用 OAuth 访问 google 任务时出现问题

    由于 google 任务没有公共 api 我想编写解决方法并像浏览器一样请求数据 然后解析结果以进一步显示 为了访问数据 我使用 google 实现了 OAuth 身份验证来访问此 url https mail google com htt
  • 从 Android 代码设置的 SECRET_CODE

    我知道如何使用清单文件中的秘密代码 它与此源代码配合良好
  • 如何在android上的python kivy中关闭应用程序后使服务继续工作

    我希望我的服务在关闭应用程序后继续工作 但我做不到 我听说我应该使用startForeground 但如何在Python中做到这一点呢 应用程序代码 from kivy app import App from kivy uix floatl
  • 调试:在 Android 1.0 中找不到文件

    今天我更新到 Android Studio v 1 0 在尝试编译任何项目时出现以下错误 app build intermediates classes debug 找不到文件 问题是在更新之前我没有任何问题 这是我实际尝试编译的代码 构建
  • 如何解决 Firebase AuthUi 中无法找到显式活动?

    使用 firebase UI 时 我无法找到显式活动类 com firebase ui auth KickoffActivity protected void onCreate Bundle savedInstanceState super
  • 如何在android线性布局上获得阴影? [复制]

    这个问题在这里已经有答案了 可能的重复 如何在android中为View设置阴影 https stackoverflow com questions 4406524 how to set shadow to a view in androi
  • android EditText 输入类型用于 StreetNumber 字段

    我试图在地址对话框的 streetNumber 字段中选择正确的 inputType 我想先显示数字键盘 然后让用户输入字母字符 对于一些非常特殊的情况 更接近这个的是 inputType datetime 但这不允许输入字母字符 那么如何
  • AudioTrack、SoundPool 或 MediaPlayer,我应该使用哪个?

    如果我需要能够 播放多个音频文件 具有不同的持续时间 例如 5 到 30 秒 独立设置右 左声道的音量 应用声音效果 如混响 失真 那么 我应该使用哪个 API 另外 我在 AudioTrack API 上找不到太多文档 有谁知道在哪里可以
  • Android 应用程序中的 Eszett (ß)

    我的 res layout activity 文件中的德语 字符在我的应用程序中自动转换为 ss 即使我将语言和键盘设置为德语 它仍然不会显示 Android 中可以显示 吗 edit
  • 菜单在片段的 onCreateOptionsMenu 处多次膨胀调用

    我使用 Fragments 当我切换到嵌套 Fragment 时 它实现了public void onCreateOptionsMenu Menu menu MenuInflater inflater 当我到达该嵌套片段时 我的菜单会多次膨
  • 在 React Native 中调试应用程序崩溃

    我是 React Native 新手 我正在尝试安装 React Native Facebook SDK 以便我可以使用我的应用程序进行 Facebook 登录 我按照此处列出的步骤操作 https tylermcginnis com in
  • Android 相机未保存在特定文件夹 [MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA]

    当我在 Intent 中使用 MediaStore INTENT ACTION STILL IMAGE CAMERA 时遇到问题 相机正常启动 但它不会将文件保存在我的特定文件夹 photo 中 但是当我使用 MediaStore ACTI
  • HERE 地图:更改路线已行驶部分的颜色

    导航时可以改变路线的颜色吗 具体来说 我希望路线中已行驶的部分的颜色与即将行驶的部分的颜色不同 现在都是同一个颜色 将 MapRoute 对象的 TravelColor 变量设置为透明对我来说很有效 mapRoute color Resou
  • 按钮 - 单击时更改背景颜色

    我的活动中有 8 个按钮 我正在寻找的是 按钮具有默认背景 单击按钮时 背景颜色应更改为其他颜色 这部分非常简单 但是 当我单击任何其他按钮时 第一个按钮的背景颜色应该变回默认颜色 我知道这将使用 选择器状态 来完成 但我不太确定如何实现它
  • 如何在android asynctask中使用inputstream作为参数?

    我正在制作一个 Android 应用程序来跟踪股票详细信息 我将通过 csv 雅虎财经 检索数据 据我所知 在android 4 0中 网络连接无法在主线程上完成 因此 我将使用 asynctask 来建立连接 但是 我在参数方面遇到了一些
  • 在 KitKat 4.4.2 中获取 SDard 路径和大小

    我在 Google Play 上有一个设备信息应用程序 在该应用程序中我有存储信息 我知道 Android 4 4 在访问外部 SD 卡方面发生了一些变化 内部似乎没有给我带来问题 我的问题是 如何可靠地获取 KitKat 上 SD 卡的大
  • 在Android Studio gradle项目中使用NDK和STL

    我在将 stlport 链接到 Android Studio 中的 gradle 项目时遇到问题 使用 NDK 的 Eclipse Android 项目迁移到 Android Studio 该项目使用 STL 我有包含内容的 android
  • Android应用程序可以像旧的普通java小程序一样嵌入到网页中吗?

    我对 android 平台一无所知 也无法在互联网上找到这个基本问题的答案 更新 好的 我本身无法嵌入 Android 应用程序 但是我可以在 Android Webbrowser 中嵌入 Java 的东西吗 不可以 您无法将 Androi

随机推荐

  • requestAnimationFrame 循环不正确 FPS

    我有一个 javascript 函数 我的游戏 希望 每秒循环 60 次 用于控制输入 绘图等 目前的编码方式似乎始终在 52 左右 明显低于 60 fps 甚至在没有其他事情发生时甚至会下降到 25 30 fps function loo
  • 除了下面之外还有其他方法可以将 json.rows 文件加载到 RStudio 中吗?

    我有一个 json rows 文件 gt instances json rows 大约有 223k 行 我尝试使用 jsonlite 并想出了 instancesfile lt fromJSON instances json rows 但我
  • Typescript:从数组类型中检索元素类型信息

    假设我有一些数组类型T 是否可以提取类型T在另一个别名 接口中 例如 我的 假的 理想代码如下 for illustration only type ArrayElement
  • 错误:[$compile:multidir] 多个指令 [form, form] 请求“form”控制器:

    我在 angularjs 中构建的表单上收到此错误 错误 compile multidir 多个指令 form form 请求 form 控制器 div ul li div job role div div job salary div d
  • 运行 shell 脚本并立即将其置于后台,但保留检查其输出的能力

    如何立即运行 shell 脚本背景但是 它仍然可以通过尾随来随时检查其输出 tmp output txt 如果可以就好了前景这个过程太晚了 P S 如果您还可以向我展示如何将后台进程 发送 到可能已初始化或尚未初始化的 GNU 屏幕 那就太
  • 从 csv 文件中的数据创建多个 csv 文件

    系统 OSX 或 Linux 我正在尝试自动化我的工作流程 每周我都会收到一个 excel 文件 我会将其转换为 csv 一个例子是 L1 L2 L3 L4 L5 L6 L7 L8 L9 L10 L11 Title r t needed a
  • 为什么 Java 5+ API 不利用协变返回类型?

    从 Java 5 开始 我们可以协变返回类型 为什么 Java API 不利用这一点呢 Take Graphics2D create 例如 为什么不重写它来返回Graphics2D目的 在我看来 它在所有情况下都是向后兼容的 总的来说 这确
  • Mac OS X 上链接库的默认搜索目录是什么

    我已经建立了谷歌测试在 Mac OS X 上使用 CMake 并获得两个共享库 libgtest dylib and libgtest main dylib 现在我需要安装它们 我知道Linux上有一些默认的搜索目录 例如 usr lib
  • 在 Windows 中以编程方式确认打印成功

    我的公司正在开发一个财务应用程序 现在我们必须应对一项新法律 该法律要求我们无论是否打印收据都采取不同的行动 收据使用 Windows 中的标准打印队列在 A4 纸上的激光打印机上打印 有没有办法以编程方式检查某个打印作业是否确实成功 需要
  • 日期格式化后以小写形式显示 AM 和 PM

    格式化日期时间后 时间以大写形式显示 AM 或 PM 但我希望它以小写形式显示 例如 am 或 pm 这是我的代码 public class Timeis public static void main String s long ts 1
  • 单个 EventMachine 反应器中的多个服务器

    是否可以在单个事件机器中运行多个服务器 我的意思是单个客户端连接可以同时使用多个服务 例如 登录服务器对用户进行身份验证 然后用户可以通过单个客户端套接字同时使用聊天室和简单的游戏 例如跳棋 或者每个服务是否需要多个 eventmachin
  • 在 Python 中通过 HTTP 将未知大小的数据从客户端流式传输到服务器

    不幸的是 我之前的问题因是问题的 精确副本 而被关闭 而它绝对不是 特此再次 它不是重复的Python HTTP 使用流式传输大文件 那个处理的是大文件的流传输 我想将文件的任意块一一发送到同一个 http 连接 所以我有一个 20 MB
  • 带 switch 和 ForEach 的 Golang 模板

    我需要创建bash sh来自 golang 程序的文件 应该执行以下操作 Create ForEach循环依赖项并读取类型并根据类型 打印不同的回显消息 命令 我需要它来使用switch on the type与 Golang 的依赖关系
  • 如何将SQL Server数据库迁移到MySQL? [关闭]

    Closed 这个问题是无关 目前不接受答案 我有一个SQL服务器数据库有大量数据和空数据MySQL数据库 现在我想将SQL Server数据库的所有数据 包括数据库架构 复制到MySQL数据库 我考虑过使用原始 SQL 转储 但 SQL
  • 如何在我的网站上显示来自 Amazon S3 的图像?

    我的照片存储在 Amazon S3 上 这些图片是私人的 不公开 所以我无法通过直接链接显示它们s3 amazonaws bucket name key name image name jpg 我知道 Amazon S3 上的图像名称 如何
  • 通过 IN 子句对 SQL Server 结果进行排序

    我有一个使用 IN 子句的存储过程 在我的 ASP NET 应用程序中 我有一个多行文本框 它向存储过程提供值 我希望能够按文本框中输入的值进行排序 我找到了如何在 mySQL 中轻松执行此操作 使用 FIELD 函数 但没有找到 SQL
  • PHP:Adobe Reader 无法打开使用 mpdf 创建的 PDF 文件

    我正在使用 mpdf 即时创建 PDF 文件 文件可以在浏览器中正常打开 但 Adob e 给我一个错误 Adobe Acrobat Reader DC 无法打开 example filename pdf 因为它不是受支持的文件类型 或者因
  • Android webview:检测滚动

    我需要知道如何检测用户是否无法在 webView 中滚动 我想在用户向左或向右滑动时生成一个操作 但前提是用户无法滚动 IF the user swipes to the left AND the webview can t scroll
  • MVC中的文件上传

    我正在尝试在 MVC 中上传文件 我在 SO 上看到的大多数解决方案是使用 webform 我不想使用它 并且个人更喜欢使用流 如何在MVC上实现RESTful文件上传 谢谢 Edit 当您认为自己已经解决了所有问题时 您就会意识到还有更好
  • 如何查找具有特定标签(属性)的视图列表

    我为 UI 小部件设置了标签 并且想要检索具有特定标签的视图列表 使用View findViewWithTag test tag 只返回一个视图 而不是所有支持标签的视图 任何帮助表示赞赏 您不应期望从此方法中获得视图数组 因为方法签名本身