I have this code, as well as your requirement. The list may overlap by decreasing the dividerheight to minus

<?xml version="1.0" encoding="utf-8"?>
<ListView android:id="@+id/list" android:layout_width="fill_parent" android:layout_height="wrap_content" android:divider="#b5b5b5" android:dividerHeight="-5dp" android:listSelector="@drawable/list_selector" />
Then add the background color to the adapter according to the position.
public View getView(int position, View convertView, ViewGroup parent) { View vi=convertView; if(convertView==null) vi = inflater.inflate(R.layout.list_row, null); TextView title = (TextView)vi.findViewById(R.id.title); // title TextView artist = (TextView)vi.findViewById(R.id.artist); // artist name TextView duration = (TextView)vi.findViewById(R.id.duration); // duration ImageView thumb_image=(ImageView)vi.findViewById(R.id.list_image); // thumb image HashMap<String, String> song = new HashMap<String, String>(); if(position % 2 ==0){ vi.setBackgroundResource(R.drawable.listselector_1); }else if(position % 3 ==0){ vi.setBackgroundResource(R.drawable.listselector_2); }else{ vi.setBackgroundResource(R.drawable.listselector_3); } song = data.get(position); // Setting all values in listview title.setText(song.get(CustomizedListView.KEY_TITLE)); artist.setText(song.get(CustomizedListView.KEY_ARTIST)); duration.setText(song.get(CustomizedListView.KEY_DURATION)); imageLoader.DisplayImage(song.get(CustomizedListView.KEY_THUMB_URL), thumb_image); return vi; }
Otherwise, you can use listselector images as well as your requirement.
source share