Android 中使用 XML 布局的自定义视图

2023-11-21

我有一个 ListAdapter,其中有很多不同的行布局。为了获得干净的代码,我想将视图类中适配器的 getView() 的行布局外包。是否可以将 XML 布局扩展为自定义视图?我只找到了 LayoutInflater,但它返回一个 View,这没有帮助。我想要类似 Activity 的 setLayout() 的东西。这可能吗?

Thanks!


您可以拥有自定义行视图并在其构造函数中扩充您的 xml:

public MyRow extends LinearLayout {
    public MyRow(Context context) {
        super(context);
        LayoutInflater.from(context).inflate(R.layout.my_row, this, true);
          ... other initialization ...
    }
}

然后使用merge in my_row.xml:

<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android">
  ... your row layout ...
</merge>

The merge元素会导致其子元素被添加为自定义视图的子元素。查看合并布局了解更多信息。

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

Android 中使用 XML 布局的自定义视图 的相关文章

  • 在 Android 8 (Oreo) 的 Webview 中获取 Resources$NotFoundException

    我正在我的应用程序的 WebView 中加载网站的 URL 该网站获取用户的基本详细信息 我正在活动中加载 WebView 但是 当 Android 8 用户点击网站的下拉菜单时 应用程序会抛出以下错误 请注意 此 WebView 在 An
  • Android Studio 拒绝运行 main()

    重现步骤 在Android Studio中启动一个新项目 使用最新更新 创建一个新类并像往常一样添加 main 右键单击类以运行 main 作为测试 package test public class Test public static
  • 排除jar中的文件进入apk

    我最近添加了一些新的罐子到我的android项目 一些 jar 包含 version properties 其中之一甚至包含 README TXT 我如何告诉 eclipse adt ant 排除文件进入 apk 显然我可以解压 apk 删
  • Android:如何测试自定义视图?

    Android 中有多种单元测试方法 测试我编写的自定义视图的最佳方法是什么 我目前正在将其作为仪器测试用例活动的一部分进行测试 但我宁愿只测试孤立的视图 对于缺乏以视图为中心的测试用例实现的一个简单解决方案是在包含视图的测试项目中创建一个
  • 如何发送超过160个字符的短信?

    如何在 Android 中发送大短信 我用了 SmsManager sms SmsManager getDefault sms sendTextMessage contactNos j null msgs i sentPI delivere
  • 无法解析符号“AuthUI”

    我正在添加 firebase google 和 Gmail 登录 但是当我粘贴代码时 onAuthStateChanged NonNull FirebaseAuth firebaseAuth 方法我收到此错误 无法解析符号 AuthUI 在
  • Google 分析“获取配置文件”不允许我选择我的帐户

    我已经根据最新的 v4 文档完成了一个有效的谷歌分析集成 我们需要去哪里获取配置文件 from 但面临以下问题 我的谷歌分析帐户上的两个不同的应用程序有两个不同的跟踪ID 对于第一个应用程序 我得到了谷歌服务 json我将文件放置在根目录中
  • Windows 7 64位android AVD启动错误:无法分配内存:8

    我刚刚更新到 Android SDK Tools r20 并尝试在 android 4 1 和 WXGA 上创建 avd 但是当我启动 AVD 时收到错误消息 配置 ini hw mainKeys no hw lcd density 320
  • 将 match_parent 转换为“0dp”

    当我使用android layout height match parent or android layout width match parent 作为约束布局中子项的高度 宽度并构建 Gradle 文件 它会自动更改为android
  • 从图库加载图像时应用程序崩溃

    在我的应用程序中 我有两个按钮 一个用于从图库 从设备 加载图像 另一个用于通过访问设备的相机拍照 我的代码在某些设备上正常工作 bt在某些设备上 应用程序单击图库中的图像时崩溃 任何人都可以帮助我找出实际问题吗 public class
  • GPSTracker 类不工作

    我尝试在我的应用程序中使用我在网上找到的 GPSTracker 类 并且我之前让它工作过 但现在似乎莫名其妙地不起作用 public class GPSTracker extends Service implements LocationL
  • getExternalCacheDir() 在 Android 上如何工作?

    据我了解 我们将经常访问的对象缓存在比普通磁盘读取更容易访问的内存段中 getExternalCacheDir 相对于getCacheDir 指向外部文件系统 在我看来这是正常的getExternalFilesDir Android 如何优
  • Motorola Android 2.2 相机忽略 EXTRA_OUTPUT 参数

    我以编程方式打开相机来拍摄视频 我告诉相机使用如下代码将视频文件放置到指定位置 Intent intent new Intent MediaStore ACTION VIDEO CAPTURE File out new File sdcar
  • 制作教程(教练标记)叠加层。需要帮助根据另一个视图的位置移动视图

    你好 我正在尝试在教程上做一个教练标记 主程序 java public class Main extends Activity private Button button1 private int x Override public voi
  • Android Ant项目参考

    我有一个 Android 项目 它有一个 Java 项目文件夹引用 我是用eclipse开发的 现在我想用Ant编译 我想在 build xml 中添加内容以包含引用 假设您的项目名为 HelloListview 比如说 并且您希望所有 A
  • Android 中带有传递参数的点击侦听器方法

    我是 Android 和 Java 新手 我想创建一个带有 int 参数的 onClick 方法 所以这是我的尝试 public void randomClick final int randomIndex private OnClickL
  • 从包中获取参数

    我正在尝试将参数从我的活动传递到片段 并且我正在使用以下代码 Override protected void onCreate Bundle savedInstanceState super onCreate savedInstanceSt
  • 如何在android中动态创建按钮?

    我想创建一个这样的页面 这 7 个按钮已经存在 但如果用户想添加更多类别 按钮 那么他可以使用 按钮并使用删除 按钮 有制作这个的想法或教程吗 创建 删除按钮onClick of button and button如下 public voi
  • Android 中何时使用服务、何时不使用服务

    我从事Android开发已经不到两年了 我仍然对这个看似简单的问题感到困惑 何时应该实施一项服务 根据我的经验 有一些罕见的情况 但我对此表示怀疑 因为每部手机上都运行着很多这样的情况 我怀疑这只是一个糟糕的应用程序设计 这本质上是我的问题
  • Android:将“内部”链接添加到 TextView 的一部分,该链接链接到我的代码中的操作

    正如标题所解释的 我想添加链接到我的TextView 有这两个警告 我希望链接能够作用于TextView 不是完整的 类似于AHTML 中的锚点 我希望链接指向我的代码中的操作 而不是网站 我可以在我的活动中定义一个方法 或者实现一个OnC

随机推荐

  • 使 FetchContent 与 find_package 兼容

    我尝试添加我的项目所需的所有依赖项以通过 CMake 进行编译 这应该会减少其他人第一次编译项目时的开销 为了实现这一点 我尝试使用 FetchContent 到目前为止一切顺利 当我链接生成的目标时 这根本不是问题 但现在我有一个库依赖于
  • 您需要在 GCD 的块内创建 NSAutoreleasePool 吗?

    通常 如果您生成后台线程或在 NSOperationQueue 上运行 NSOperation 则需要为该线程或操作创建 NSAutoreleasePool 因为默认情况下不存在 同样的规则是否适用于放置在 Grand Central Di
  • Jquery 验证插件 - 您可以从选项中启用“热切”验证吗?

    我在项目中使用 Jquery 验证插件 默认情况下 该插件会在单击提交按钮时验证输入 该行为是 惰性的 以便不打扰用户 如果发现错误 验证就会变得 急切 并在用户更正有问题的条目时验证输入 有没有办法通过选项覆盖最初的 惰性 行为 我在文档
  • 如何从时间(小时)中删除前导零

    我想要从 1 到 9 的小时不带前导零 但分钟带零 同时还要在时间上添加 15 分钟 现在 当我输入 1 和 46 时 我得到 02 01 我想得到 2 01 Scanner scan new Scanner System in int h
  • Request.Browser.IsMobileDevice 不适用于 iPadAir2 和 iOS 13.0.1

    I am able to detect iPadAir2 device running on iOS 11 4 using Request Browser IsMobileDevice and it gives me UserAgent i
  • 颁发者证书的过期状态是否会影响主体的过期?

    如果证书颁发者颁发的证书的过期时间发生在颁发者自己的证书过期之后 那么颁发者的证书过期后 颁发的证书是否仍然有效 为了更清楚 让我举个例子 I 发行人 C 颁发的证书 如果我在 2007 年创建了 C 到期日期为 2017 年 我的证书20
  • Leopard 终端(和 iTerm)忽略控制组合键

    I am very used to using Ctrl A Ctrl E Ctrl L etc as shortcuts to operations beginning of line end of line clear terminal
  • 找到不在列表中的最小整数

    我的一位同事使用了一个有趣的面试问题 假设给您一个非常长的 未排序的无符号 64 位整数列表 你如何找到最小的非负整数does not出现在列表中 后续 既然已经提出了明显的排序解决方案 你能比 O n log n 更快地完成它吗 后续 您
  • 查找“nan”并将其替换为数字

    我想替换数组中的数字 3 而不是所有 nan 这是我的代码 train train replace nan int 3 但我的数组没有任何变化 你能指导一下吗 您可以使用np isnan import numpy as np train n
  • 从 ExceptionLogger 引用操作参数

    我想利用新方法来全局记录错误 我写了一个继承的类ExceptionLogger并覆盖Log 方法 然后将其注册为替代品 public class TraceExceptionLogger ExceptionLogger public asy
  • 在 .NET 中创建插件环境的最佳方法

    我读了这篇文章如何在 NET中加载插件 我实在看不出微软的System Addin命名空间有什么高明之处 为什么我不能在 bin 目录中有一个插件文件夹 用户可以将程序集放入其中以实现我设计的界面 然后 我可以使用反射来创建插件类的实例 并
  • Phonegap 在应用程序运行时启用 GPS/位置

    我正在使用 jquery ui maps 和 HTML5 地理位置向用户显示位置列表 我需要利用用户的地理位置 所以 这是用例 用户未启用 GPS 定位服务 用户打开应用程序并导航到调用的视图导航器 地理位置获取用户的位置 应用程序出错并通
  • 尝试理解 javascript 中 for 循环内的递归

    我一直盯着这个问题的答案 甚至在每次迭代中写下变量之类的东西 我只是不明白这里的过程 当我输入控制台日志时 我看到 permute 在到达此行之前被调用 input length 1 次 input splice i 0 ch 当我完全迷失
  • 删除 ttk 组合框鼠标滚轮绑定

    我有一个 ttk 组合框 我想从鼠标滚轮解除绑定 以便在组合框处于活动状态时使用滚轮滚动不会更改值 而是滚动框架 我尝试过解除绑定以及绑定到空函数 但都不起作用 见下文 import Tkinter as tk import ttk cla
  • 从 9i 客户端连接到 11g 数据库时,ORA-01017 用户名/密码无效

    我正在尝试从具有 9i v9 2 0 1 客户端的 PC 连接到 11g v11 2 0 1 0 上的架构 它似乎可以很好地连接到某些模式 但不是这个 它返回一个ORA 01017 Invalid Username Password每次都会
  • 区分带有默认值和无值的&可选参数

    根据功能在 GigaMonkeys 上 Common Lisp 通过以下方式支持可选位置参数 optional并且默认值可以任意设置 默认的默认值为nil defun function mandatory argument optional
  • 如何通过 MVVM 为 DataGrid ItemSsource 设置过滤器

    我有一个DataGrid绑定到一个集合视图源在 XAML 中
  • Next.js React 应用程序中未定义窗口

    In my Next js我似乎无法访问该应用程序window 未处理的拒绝 ReferenceError 窗口未定义 componentWillMount console log window innerHeight window inn
  • 如何批量发送包含多个 url 的多部分 html 帖子?

    我正在与 gmail api 交谈 并希望对请求进行批处理 他们在这里有一个友好的指南 https developers google com gmail api guides batch 这表明我应该能够使用多部分 混合并包含不同的网址
  • Android 中使用 XML 布局的自定义视图

    我有一个 ListAdapter 其中有很多不同的行布局 为了获得干净的代码 我想将视图类中适配器的 getView 的行布局外包 是否可以将 XML 布局扩展为自定义视图 我只找到了 LayoutInflater 但它返回一个 View