Android: возможно ли иметь вид прокрутки во флиппере в виде вкладок? - PullRequest
1 голос
/ 11 июня 2010

У меня есть TabView , и на его первой вкладке у меня есть ViewFlipper , отображающий две страницы ImageButtons (скажем, buttonsPage1 и 1010 * buttonsPage2 *).

В альбомной ориентации мне нужно, чтобы страницы кнопок изображений были прокручиваемыми, поэтому я попытался добавить ScrollView на buttonsPage1 и еще один на buttonsPage2 .Я получаю StackOverflowError.

Затем я попытался подавить ScrollView из pageButtons1 и 2 и включить ViewFlipper в ScrollView.Я получил тот же StackOverflowError.

Если я полностью удаляю ViewFlipper, приложения работают должным образом, ошибки не возникает, только мне DO нужна прокрутка в горизонтальной ориентации.

Кто-нибудь может помочь мне решить эту проблему?

1 Ответ

1 голос
/ 11 июня 2010

Я получаю StackOverflowError.

Если в вашей трассировке стека указан целый набор внутренних методов Android, которые, по-видимому, связаны с отрисовкой вашего пользовательского интерфейса, то ваш интерфейс слишком сложен. Используйте hierarchyviewer и ваш эмулятор, чтобы просмотреть дерево View / ViewGroup для своей деятельности и найти способы удаления слоев. Например, если ваш TabWidget не содержит ViewFlipper, а вместо этого вы используете Intent для обозначения действия, которое идет на вкладке, это добавляет несколько слоев к вашей иерархии View больше, чем просто использование Views как содержание вкладок.

Мое общее эмпирическое правило состоит в том, чтобы стараться, чтобы иерархии моих представлений сохранялись на глубине одной цифры, измеряемой от корня до самой длинной ветви. К тому времени, когда вы доберетесь до 15 слоев, вы почти наверняка потерпите крах где-нибудь.

Если ваша ошибка StackOverflow не связана с отображением вашего пользовательского интерфейса, вам необходимо опубликовать трассировку стека в качестве редактирования этого вопроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...