与部分地重叠的自定义视图项列表视图(机器人)(List view with custom view

2019-07-04 03:00发布

我想要实现在Android中包含一些自定义的视图列表。 我的问题是我想要的意见将投入一前一后与他们之间几乎没有重叠。 就像下面的模式:

我也想以这样的方式,当用户点击的项目之一,他们将彼此分开移动,以控制这种重叠。

我试图扩大ListView的,但它似乎很模糊,有什么建议?

编辑:这可以更清楚:

我通过设置分隔高度-50dp做到了。 这正是我想达到的目标,但不知何故,它不会对我的应用体现。

Answer 1:

这或许可以通过使用来实现Camera.setTranslate功能。 见安卓:垂直的ListView与overlaped行和Android版本:垂直3D列表视图类似的问题(与解决方案)



Answer 2:

我设法通过滚动视图与相对单一的布局作为一个孩子实现这一目标。 然后我将动态定义的规则和保证金的意见:

for (int i = 0; i < 30; i++) {
        TextView tv = new TextView(context);
        tv.setText("Text \n Text" + i);

        tv.setBackgroundColor(i % 2 == 0 ? Color.RED : Color.GREEN);

        RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
        lp.addRule(RelativeLayout.ALIGN_PARENT_TOP);
        lp.leftMargin = 0;
        lp.topMargin = (i * 45);
        rl.addView(tv, lp);
}

稍后,您可以通过改变他们的Y值控制的子视图定位(例如:如果你想添加动画)。

这是最后的结果是:



文章来源: List view with custom view items with partially overlaps (Android)