从 listView 中删除标题

2024-02-18

我在尝试从文件中删除标头时遇到一些问题listView。起初我使用addHeaderView()添加它,但是当我更改为另一个布局时我希望它消失但是removeHeaderView()不起作用...

我也尝试将可见性设置为“消失”,但它并没有消失......

我能做些什么?

提前致谢


尝试下面提到的方法..

Android ListView#addHeaderView and ListView#addFooterView方法很奇怪:在设置 ListView 的适配器之前,您必须添加页眉和页脚视图,以便 ListView 可以考虑页眉和页脚 - 否则会出现异常。这里我们添加一个 ProgressBar(旋转器)作为 headerView:

// spinner 是一个 ProgressBar

listView.addHeaderView(spinner);

我们希望能够随意显示和隐藏该微调器,但完全删除它是危险的,因为我们永远无法在不破坏 ListView 的情况下再次添加它 - 请记住,在添加后我们无法添加 HeaderView它的适配器:

listView.removeHeaderView(spinner); //dangerous!

所以我们把它隐藏起来吧!事实证明这也很难。仅隐藏微调器视图本身会导致一个空的但仍然可见的标题区域。

现在尝试隐藏微调器:

spinner.setVisibility(View.GONE);

结果:标题区域仍然可见,但有一个丑陋的空间:

解决方案是将进度条放在包裹其内容的 LinearLayout 中,并隐藏内容。这样,当其内容被隐藏时,包装的 LinearLayout 将崩溃,从而导致 headerView 在技术上仍然存在,但高度为 0dip:

<LinearLayout 
      xmlns:a="http://schemas.android.com/apk/res/android"
      android:orientation="vertical"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content">
    <!-- simplified -->
      <ProgressBar
        android:id="@+id/spinner"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/> 
  </LinearLayout>

然后,将布局设置为标题:

spinnerLayout = getLayoutInflater().inflate(R.layout.header_view_spinner, null);
listView.addHeaderView(spinnerLayout);

当我们需要隐藏它时,隐藏布局的内容,而不是布局:

spinnerLayout.findViewById(R.id.spinner).setVisibility(View.GONE);

现在标题从视图中消失。顶部不再有丑陋的空间!

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

从 listView 中删除标题 的相关文章

随机推荐

  • 是否可以在 Travis 中启动 Selenium 服务器?

    我想在 Travis 中运行完整的 Selenium 测试 但我似乎无法启动服务器 我的 Travis YAML 文件 language node js node js 6 2 before script npm install selen
  • 改进 Scala 的 JVM [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何阻止netty在服务器套接字上监听和接受

    有没有办法告诉 netty 停止侦听和接受套接字上的新连接 但完成当前连接上任何正在进行的工作 你可以直接关闭ServerSocketChannel由创建的ChannelFactory 通常 ServerSocketChannel由返回Se
  • 自动填充到最后一个相邻单元格的宏

    我正在尝试使用 Excel 中的宏记录器来记录宏来填充一列单元格 但是因为每次填充的单元格数量不同 所以它要么填充得太短 要么填充得太长 这似乎是因为宏标识单元格范围及其固定 无论如何 我可以让它填充到最后一个填充的相邻单元格吗 例如 自动
  • 如何将安装(框架+应用程序)打包到一个可执行文件中?

    我想创建一个文件 setup exe 其中包含我用 C 开发的一个应用程序以及 Net Framework 4 0 的安装程序 这个想法是 当我执行 setup exe 时 它会检查计算机上是否安装了 net Framework 4 0 如
  • pd.merge() 和 dataframe.merge() 之间的区别

    我想知道当你合并时有什么区别pd merge versus dataframe merge 示例如下 pd merge dataframe1 dataframe2 and dataframe1 merge dataframe2 我们有两个函
  • 将纬度和经度值(度)转换为 Double 。爪哇

    我正在尝试将以度为单位的纬度和经度值转换为双倍 价值观是这样的 latitude 25 21 N longitude 55 23 E When i try to log this in android it is coming like t
  • 在log4net的appender中设置日志名称

    我有 MyLogger 类 我在其中使用 log4net 如何修改我的附加程序以将日志保存在特定的日志名中 我想通过参数 logName 设置它 public void AddEntry string source string logNa
  • Python。龙卷风。非阻塞 xmlrpc 客户端

    基本上我们可以通过以下方式调用 xmlrpc 处理程序 import xmlrpclib s xmlrpclib ServerProxy http remote host rpc print s system listmethods 在to
  • 从 XIB 文件过渡到 Storyboard

    我目前有一个使用 XIB 的 XCode 项目 并且想开始使用 Storyboard 有没有好方法将我的 XIB 文件移动到 Storyboard 中 您可以一次对一个视图控制器手动执行此操作 从 xib 复制视图 c 转到故事板并在其中创
  • 在 js.erb 文件中渲染部分内容

    我正在尝试创建一个基于 ajax 的评论表单 它将在提交时更新我的 评论列表 非常基本的东西 我有部分comments single html haml其中有一个 li 带有基本评论信息的标签 这是我的comments create js
  • 如何使用 Sequel PRO 将“设置默认值”设置为“NOW()”?

    我有一个包含一些日期的 MySQL 表 我需要其中一个的默认值等于当前时间 我正在使用 Sequel Pro 来构建数据库 然后我在默认值中写入了 now 和 GETDATE 但不起作用 有人可以帮我吗 如何使用 Sequel PRO 将
  • 有没有推荐的易于使用的 Javascript XML 库? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • libsigsegv 和响应堆栈溢出

    我们正在尝试测试学生代码 为了使该过程自动化 我们希望检测学生的代码是否溢出堆栈 我使用 libsigsegv 库及其相应的 stackoverflow install handler 取得了一些成功 它运行得非常出色 直到学生的代码两次破
  • 在 C++11 中生成随机字符串? [复制]

    这个问题在这里已经有答案了 我需要使用 C 11 生成随机字符串的帮助 我不知道如何继续 如果你能帮助我 include
  • 列表视图无限滚动

    我有一个使用自定义适配器的列表视图 现在我希望它显示前五个条目并在向下滚动时加载其他条目 最简单的方法是什么 如果我的列表代码是 public class Second extends Activity static final Strin
  • 查看 Visual Studio 中哪些方法/函数返回特定对象

    我正在 Visual Studio 中制作 C 应用程序 想知道是否有任何方法可以查看返回特定类型的每个方法 例如 我想知道哪些方法返回 AsymmetryAlgorithm 对象 Reflector http www red gate c
  • a[:] = b 和 a = b[:] 之间的区别? (Python)

    我被要求进行编码测试 但不知道答案 有人有主意吗 是切片运算符 当它位于左侧时 它会覆盖列表的内容而不创建新的引用 当它位于右侧时 它会创建具有相同内容的列表的副本
  • 如何使非英语网址在 next.js 中工作?

    如何使非英语 URL 与 next js ssr client 一起使用 欢迎任何想法 重写等 前段时间重写有助于解决这个问题 但在一些更新之后它停止工作 这是我的尝试fix this https github com zeit next
  • 从 listView 中删除标题

    我在尝试从文件中删除标头时遇到一些问题listView 起初我使用addHeaderView 添加它 但是当我更改为另一个布局时我希望它消失但是removeHeaderView 不起作用 我也尝试将可见性设置为 消失 但它并没有消失 我能做