列表项彼此重叠

时间:2015-10-01 15:31:39

标签: android android-layout

我想为列表视图实现这样的布局: enter image description here

我知道如何实现这个目标吗?

由于

3 个答案:

答案 0 :(得分:0)

您可以通过多种方式完成此操作,但我认为最方便的方法是创建两个9-patch背景图像,以便您可以定义哪些方面应以何种方式缩放。 (检查here以获取有关9补丁的信息)

确保背景图像具有透明部分,您希望一个列表项与另一个列表项重叠,并将第二项的layout_marginTop设置为负值,以获得所需的效果。

答案 1 :(得分:0)

此方法必须帮助,使用两个不同的视图并根据位置一次显示一个 enter image description here

答案 2 :(得分:0)

要实现listView元素作为屏幕截图,您需要有一个CustomListViewAdapter(扩展ArrayAdapter),并且在CustomListViewAdapter类中,您需要在方法getView()中指定要在每个元素中使用的背景,如下所示:

@Override
public View getView(int position, View convertView, ViewGroup parent)
{
LayoutInflater inflater = (LayoutInflater) context
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View rowView = inflater.inflate(R.layout.rowlayout, parent, false);

    if ((position % 2) == 0) {
        rowView.setBackgroundResource(R.drawable.trapeze_down);
    } else {
        rowView.setBackgroundResource(R.drawable.trapeze_up);
    }
    rowView.refreshDrawableState();
    return rowView;
}

注意: * rowLayout表示listView中元素的布局 * trapeze_down和trapeze_up是两个png图像,代表你想要在背景中使用的空格形式 *在创建列表视图时,请不要忘记指定:         机器人:分隔=" @空"         机器人:dividerHeight =" 0dp" *最后你只需将适配器设置为listView