Ответ 1
Не стесняйтесь использовать мою библиотеку здесь.
Он делает именно то, что вы хотите, и основан на ViewPager
, чтобы вы могли использовать его только с типичным PagerAdapter
по вашему выбору.
Я искал в Интернете, но я не мог найти хорошего объяснения или совета. В принципе, я хочу реализовать эту функциональность.
при слайде вниз
Я использовал класс StackView, и все, что я получаю, это "диагональный" стек
Я хочу, чтобы представления были друг за другом, как на рисунках выше.
Здесь задан аналогичный вопрос → Android настроить stackview, но я не смог найти удовлетворительных ответов.
Я прочитал код для StackView, как было предложено, но, честно говоря, я не знаю, как бы настроить его, чтобы получить то, что я хочу. Когда я изменяю значение PERSPECTIVE_SHIFT_FACTOR_X или PERSPECTIVE_SHIFT_FACTOR_Y ничего не меняется, и я получаю тот же "диагональный вид". Я что-то упускаю?
Заранее благодарим за ответы.
Не стесняйтесь использовать мою библиотеку здесь.
Он делает именно то, что вы хотите, и основан на ViewPager
, чтобы вы могли использовать его только с типичным PagerAdapter
по вашему выбору.
Вы не можете изменить исходный PERSPECTIVE_SHIFT_FACTOR_X
, потому что это личное поле.
StackView
использует много классов, которые имеют видимость пакета и могут использоваться только в пакете android.widget.
Кроме того, некоторые из этих классов предварительно скомпилированы и источник нигде не найден, поэтому вы не можете просто скопировать их и создать свой собственный StackView
с нуля.
Вы можете сделать представления в столбце, переопределив onLayout
, но как только вы их оживите, их позиции будут заменены на значение по умолчанию. К сожалению, анимация вида выполняется в частных методах StackView
, поэтому вы ничего не можете с этим сделать.
Вам лучше создать свой собственный класс, который сделает это, и вы можете ссылаться на код, используемый в источнике StackView
. Создание такого класса может быть большой работой, и это определенно не в рамках одного вопроса.