Я собираюсь ответить на это с точки зрения дизайна пользовательского интерфейса, а не с точки зрения технического кода. (Я уверен, что у кого-то еще будет возможность, чтобы в окне списка отображался выбранный элемент)
Я бы сказал, что использование списка со значительными объемами данных, добавляемых в него, практически невозможно. Скажем так, вы получаете его, чтобы держать выбор в поле зрения, а если пользователь все еще ищет требуемый элемент, вы не сможете сохранить его тогда.
Во-первых, если ожидаемое общее время загрузки составляет менее 10 секунд, вы можете просто отключить окно списка, пока загрузка не будет завершена. (Очевидно, он затенен с помощью вращающейся анимации или чего-то такого, чтобы пользователь мог видеть, что он что-то делает.) Я предполагаю, что вы уже отклонили эту опцию, иначе вы, вероятно, не спросили бы здесь. Но я думаю, что это стоит рассмотреть. Если время загрузки слишком мало, подумайте, действительно ли ваши пользователи получат что-нибудь, просматривая список, пока он еще загружается.
Во-вторых, я бы предложил, чтобы вы нашли способ ограничить содержимое списка, чтобы в каждый момент отображались только небольшие количества. Вы можете сделать это, только отображая имена, начинающиеся с одной буквы алфавита (вместе с элементом управления буквой). Или вы могли бы предоставить текстовое поле для ввода фильтра вверху, где пользователь мог бы набрать первые несколько букв, а в списке отобразились бы только имена, начинающиеся с этих букв. Это позволит пользователю напечатать «sa», и в поле со списком отобразятся «sam», «samantha», «sacha» и т. Д. Теперь у вас есть только небольшое количество элементов в списке, поэтому вам не нужно беспокоиться об этом, прыгая вокруг. Если количество элементов в списке становится слишком большим (из-за загрузки в фоновом потоке) и список выходит за пределы высоты поля, пользователь может просто ввести дополнительную букву для дальнейшей фильтрации списка.
Извините, если это не совсем то, что вы хотели, но я подумал, что стоило бы поднять альтернативный дизайн, если бы вы его пропустили.