Меня тоже интересует эта тема, поэтому я провел небольшое исследование. Первое: никогда не помещайте ListView в ScrollView (как вы узнали сами). К сожалению, поиск этой проблемы не приводит к каким-либо решениям, поэтому я попробовал мое предложение из моего комментария выше.
Я реализовал собственный ListAdapter и поместил ListViews в один родительский ListView. Это не работает (приводит к той же проблеме, что и с ScrollView). Говоря с ребятами на официальном android-irc # android-dev на freenode, они сказали мне, что поместить ListViews в ListView так же плохо, как и даже хуже, чем поместить их в ScrollView. К сожалению, они также не смогли помочь мне с проблемой.
Кажется, есть только один способ достичь того, что вы хотите сделать; см. ответ на этот похожий вопрос Прокрутка с помощью нескольких списков просмотра для Android . Идея состоит в том, чтобы объединить все ListViews в один с помощью специального адаптера и вставить какие-то заголовки между записями. Это абсолютно выполнимо, но может потребовать особых усилий.