Saya mencapai solusi yang bagus dengan yang ini:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- This is the line -->
<item android:top="-1dp" android:right="-1dp" android:left="-1dp">
<shape>
<solid android:color="@android:color/transparent" />
<stroke android:width="1dp" android:color="#ffffff" />
</shape>
</item>
</layer-list>
Ini berfungsi dengan baik jika Anda membutuhkan latar belakang transparan tetapi masih warna guratan terbuka (Dalam kasus saya, saya hanya membutuhkan garis bawah). Jika Anda membutuhkan warna background Anda dapat menambahkan warna solid shape seperti pada jawaban Maragues.
EDIT 1
Terkadang, untuk perangkat Densitas Tinggi, penggunaan nilai penurunan rendah dapat berakhir dengan goresan atau jarak yang sangat tipis atau tidak terlihat. Ini mungkin terjadi pada Anda juga saat mengatur pemisah ListView.
Solusi paling sederhana adalah menggunakan jarak 1px, bukan 1dp. Ini akan membuat garis selalu terlihat pada semua kepadatan. Solusi terbaik adalah membuat sumber daya dimensi untuk setiap kepadatan, guna mendapatkan ukuran terbaik untuk setiap perangkat.
Edit 2
Menyenangkan, tetapi saya mencoba menggunakan ini 6 tahun kemudian dan saya tidak bisa mendapatkan hasil yang baik di perangkat Lollipop.
Mungkin solusi saat ini adalah menggunakan 9-patch. Android seharusnya membuat solusi mudah untuk masalah ini setelah sekian lama.