Использование Gallery.setSelection (position) во время onCreate - PullRequest
0 голосов
/ 25 июля 2011

Я создаю приложение, которое имеет Gallery, и у этого Gallery есть различное количество просмотров в зависимости от ориентации. В широком смысле, некоторые широкие изображения являются разворотами на две страницы; как таковые они занимают один View в альбомной ориентации, но они делятся на два вида (по одному на страницу) в портретной ориентации.

У меня есть система, которая запоминает, какая "страница" выбрана, и преобразует ее в позицию, которую можно отправить на Gallery.setSelection(position). Я вызываю это из Activity.onCreate(), используя Activity.onRetainNonConfigurationInstance(), чтобы передать объект, содержащий эту, помимо прочего, информацию обратно в приложение. К сожалению, Gallery, похоже, сбрасывает себя на прежнее значение позиции после завершения onCreate.

Могу ли я подавить это? Если нет, когда мне нужно вызывать мой Gallery.setSelection(position) метод?

1 Ответ

0 голосов
/ 26 июля 2011

Я разобрался.

Когда меняется ориентация, вызывается Activity.onCreate() и все надувается.Переопределив Activity.onResume() и вызвав Gallery.setSelection (position) с желаемым значением после super.onResume (), можно получить правильное поведение;предположительно, выбор галереи установлен на прежнее значение либо во время super.onResume (), либо между Activity.onCreate () и Activity.onResume().

...