动态改变listview的分隔线高度?

2023-11-26

这个问题已被问到这里a link

我也想澄清一下问题 我有 10 个列表项Listview我想要拥有deviderheight每个列表项的不同之处就像第一个项目应该是setDividerheight(2)第二次setDividerheight(4)像这样..

我制作了一个自定义适配器,在其中设置我的布局

public View getView(int position, View convertView, ViewGroup parent) {
    View v = super.getView(position, convertView, parent);

    if(position ==2)
    {
        if (v != convertView && v != null) {
            ViewHolder holder = new ViewHolder();

            // TextView tv = (TextView) v.findViewById(R.id.artist_albums_textview);
            // holder.albumsView = tv;

            convertView = mInflater.inflate(R.layout.jazz_artist_list_item, null);
            holder.albumsView = (TextView)convertView.findViewById(R.id.artist_albums_textview);

            //   lv.setDividerHeight(8);
            v.setTag(holder);
        }
    }
    else
    {
        if (v != convertView && v != null) {
            ViewHolder holder = new ViewHolder();

            convertView = mInflater.inflate(R.layout.jazz_artist_list_item, null);
            holder.albumsView = (TextView)convertView.findViewById(R.id.artist_albums_textview);

            //  lv.setDividerHeight(2);
            v.setTag(holder);
        }
    }
}

但这似乎不能正常工作。

关于如何动态设置 Listview 的分隔线高度的任何想法

问候, 拉克斯米坎特


//set Divider as you like   

listView.setDivider((Drawable) getResources().getDrawable(R.drawable.orange));

//then set the height dynamically

listView.setDividerHeight(1);

在您的 Activity 中,有 ListView。不是适配器类。

如果你在问题中到底写了什么。做这个:

让每个 listView Item 布局包含一个 TextView 和一个 View(每个项目后面的分隔符),然后根据 getView() 方法中获得的位置参数更改 View 的高度。

ListView 项目布局:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:padding="5dp" >
    <TextView
        android:id="@+id/label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@id/logo"
        android:padding="5dp"
        android:textSize="14dp" >
    </TextView>
    <View
        android:id="@+id/view"
        android:layout_width="fill_parent"
        android:layout_height="1dp"
        android:layout_below="@id/label"
        android:background="@drawable/orange" />
</RelativeLayout>

现在在适配器类中,您的 ViewHolder 包含 TextView 和 View。

so,

Holder.View = (View)convertView.findViewById(R.id.view);
if(position == 0){
     (Holder.View).setHeight(2);
}

等等。

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

动态改变listview的分隔线高度? 的相关文章

随机推荐

  • 授权请求标头与凭据的 POST 请求正文

    将用户凭据从前端发送到后端服务器的正确方法是什么 我看到一些示例 其中一些开发人员使用授权标头 一些开发人员在 POST 正文中传递凭据 尝试登录时 凭据通常会转到请求正文一次 您应该收到一个令牌作为回报 尽管您是否通过 HTTP 标头 请
  • 如何使用Javascript读取get请求?

    所以我有一个名为的 html 页面A html它是这样称呼的B html A html varString bla bla bla 向 JS 发送 args 是否正确 如何解析JS中的args 不使用Jquery等任何框架 在IE6 Fir
  • 如何使用 JDBC 和 HSQLDB 检索以前自动生成的 PK ID 值

    我正在使用 JDBC 和 HSQLDB 2 2 9 将新行插入数据库并随后保留其行的最有效和准确的方法是什么id PK 设置为自动增量 值 我需要这样做的原因可能非常明显 但我将用一个示例进行说明以供讨论 说有一个Customer表有一个P
  • 如果有人在我的浏览器中禁用了cookie,我该如何在java中进行会话?

    我想知道如果有人禁用了我的浏览器中的 cookie 那么 cookie 不适用于我的浏览器 那么我如何在 java 中进行会话 我正在为服务器端编程编写 servlet 那么我的会话如何进行 它如何识别用户 由于 JSESSION ID 存
  • 如何从 Apache Spark 中的数据帧中选择相同大小的分层样本?

    我在 Spark 2 中有一个数据框 如下所示 其中用户有 50 到数千个帖子 我想创建一个新的数据框 其中包含原始数据框中的所有用户 但每个用户只有 5 个随机抽样的帖子 user id post id text 67778705 447
  • 将文本附加到富文本框中的开头

    private void button1 Click object sender EventArgs e richTextBox1 AppendText r n richTextBox1 Focus string s Enter richT
  • 如何在R中生成具有指定对数正态分布的随机数?

    我想从对数正态分布中随机生成 20 个数字 几何平均值为 10 几何标准差为 2 5 我应该使用哪个 R 函数来完成此任务 The rlnorm功能 rlnorm 20 log 10 log 2 5 R 中更一般的分布通常可用于d 强度 p
  • 动态添加删除线性布局的控件

    我有 3 个布局 当单击按钮访问某些布局时 我需要删除其中的控件 并且知道如何实现该布局 这是我使用的代码
  • git bare 存储库、工作树和跟踪分支

    我正在使用一个代码库 在该代码库中我需要出于不同的目的同时处理多个分支 因此 我克隆到一个裸存储库 然后设置一些工作树 git clone bare ssh email protected project repo repo git cd
  • 无法从 Google Cloud Function 访问存储在 Secrets Manager 中的密钥

    在测试我编写的尝试访问存储在 Secret Manager 中的密钥的 Google Cloud Function 时 出现以下错误 Error 7 PERMISSION DENIED Permission secretmanager ve
  • Swift 1.2 中的神秘崩溃 - 仅在发布版本中

    更新到 Xcode 6 3 beta 1 和 Swift 1 2 后 我的所有应用程序都神秘崩溃仅在发布版本中 在更新我的 Swift 1 2 代码后 它们在调试版本中工作正常 调试器没有任何感觉where崩溃正在发生 但原因尚不清楚 一些
  • jQuery点击表格单元格事件

    我有一个如下所示的html代码 tbody tr td class name Joe td td class surname White td td class age 25 td tr tbody 并且有这样的 jQuery 代码 tr
  • 有没有更好的方法用 Python 编写这个 URL 操作?

    我很好奇是否有一种更简单的方法可以从 url 中删除特定参数 我想出的是以下内容 这似乎有点冗长 使用的库或者更Pythonic的版本值得赞赏 parsed urlparse url if parsed query params dict
  • Docker - 如何将文件从映像复制到主机?

    我的问题与这个问题将文件从容器复制到主机 我有一个 Dockerfile 它可以获取依赖项 从源代码编译构建工件并运行可执行文件 我还想复制构建工件 在我的例子中它是 zip由 生产sbt dist在 target 中 但我认为这个问题也适
  • 如何进行视野自动对焦?

    当用户打开页面时 我需要聚焦该字段 我不知道它是否会改变任何东西 但它位于我从 PHP 文件加载的模式窗口内 有简单的方法吗 使用 JavaScript 您可以实现此目的 document onload function document
  • 使用 Jasmine 在 JavaScript 中存根 WebSocket

    我尝试测试是否onmessage是一个适当的函数 这是一个测试 describe init address window function beforeEach function address ws test address window
  • MigLayout 推送 VS 增长

    这两个约束有什么区别 从文档中 PUSH 使组件所在的行和 或列随着 权重 而增长 GROW 设置组件相对于同一单元中的其他组件的增长程度 那么 主要的想法是缩小组件内部和外部的尺寸 重要的是要明白fill 列 行 grow push协同工
  • 当未指定默认命名空间时,函数 getMessageData 必须使用前缀[重复]

    这个问题在这里已经有答案了 我收到这个错误 WEB INF jsp account index jsp 6 0 函数 getMessageData 必须 当未指定默认名称空间时与前缀一起使用
  • 二叉树插入算法

    我最近完成了我正在从事的一个项目的二叉搜索树的实现 一切都很顺利 我学到了很多东西 然而 现在我需要实现一个常规的二叉树 由于某种原因 这让我感到困惑 我正在寻找一种方法来执行我的 InsertNode 功能 通常在 BST 中 您只需检查
  • 动态改变listview的分隔线高度?

    这个问题已被问到这里a link 我也想澄清一下问题 我有 10 个列表项Listview我想要拥有deviderheight每个列表项的不同之处就像第一个项目应该是setDividerheight 2 第二次setDividerheigh