【问题标题】:Overlapping row in listview列表视图中的重叠行
【发布时间】:2013-09-09 05:23:44
【问题描述】:

如何创建下面的视图。

1) 使用列表视图或

2) 在滚动视图中膨胀自定义视图。 这不仅仅是问题。

如果是列表视图,那么如何重叠行。

每一行都有不同的颜色,这将来自 api webservice.

在列表视图中,在每一行中,我在第二张图片中标记的红色部分都有问题。 甚至每一行的背景都不一样,下一行会出现相同的颜色。

如何在listview中做纹理效果?

【问题讨论】:

    标签: android listview view android-canvas


    【解决方案1】:

    这个问题涉及很多方面:

    1. 如何绘制重叠视图? 我会尝试为垂直填充设置负值,但这是一个疯狂的猜测。此外,您可以将图形和绘制视图划分为包含视图 N 和第 N+1 个视图的某些部分的矩形。

    2. 非矩形命中区域呢? 您可以使用颜色选择、形状手动检测点击,或者只是将视图的可点击区域简化为矩形。

    3. 可见性检测呢? ListView 仅显示可见的视图。我不确定,但很可能它不适用于负填充或类似的黑客攻击。

    我个人会使用类似 ListView 的适配器和动态行加载来编写自定义视图。

    【讨论】:

    • 如果我将创建列表视图,那么自定义列表视图中的概念重叠问题。
    • 在第一个选项中。如何在分钟内设置垂直填充。
    • stackoverflow.com/questions/9685658/… 你可以设置顶部和底部填充
    • 仍然无法正常工作。我尝试使用底部边距和底部填充,但它不起作用。
    • 就像我在开头写的一样,这是一个疯狂的猜测。可能您需要编写自己的具有重叠视图的列表。这种方法最耗时,但它可以让您最大程度地控制想要实现的目标。
    【解决方案2】:

    我尝试了很多方法,bestfastest 是简单地将负分隔符设置为 listview,如下所示:

    android:dividerHeight="-100dp"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-13
      • 1970-01-01
      • 2017-06-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-30
      相关资源
      最近更新 更多