我在使用Android的ArrayAdapter的自定义实现时遇到了一个奇怪的问题。为了提供一些背景知识,我正在尝试在保留当前滚动位置的同时更新ListView的内容。我有一个服务,它执行一个线程来更新显示在ListView中的数据。该数据存储在ArrayList中,ArrayList用于为ListView生成一些自定义ArrayAdapter。当按下ListView中的项目(添加或删除项目)时,适配器也会更新。我以前只是在每次有任何类型的更改时创建新的适配器,然后将这个新的适配器设置到ListView。这行得通,但每次都会导致ListView滚动到顶部。鉴于我的应用程序的性质,这是不