У меня есть 4 Относительные макеты: (как вы можете видеть в анимации)
- Зеленый RelativeView
- "Тип что-то и значки" RelativeView
- Серая функция RelativeView
- Нижнее текстовое окно
Каждый RelativeView является "ниже" предыдущего относительного представления.
По дизайну, когда два внутренних вида закрыты, кнопка должна быть наполовину сверху над зеленым, а нижняя часть наполовину над текстом (как показано в анимации )
Хорошо, поэтому я добавил кнопку, которая находится внутри "нижнего текстового представления"
Но для того, чтобы дно было только наполовину ниже над представлением, я добавил отрицательную маржу:
Итак здесь без:
И здесь он с отрицательным полем (желаемый результат)
Поэтому, когда я нажимал кнопку, я просто скрывал/показывал (+ анимацию с android:animateLayoutChanges="true"
) внутренние 2 средние просмотры
Итак, где проблема?
Вопрос
Я не знаю, почему, но только нижняя половина кнопки доступна! Я думаю, это потому, что эта половина находится внутри контейнера, а верхняя половина не в его представлении... (может быть, я ошибаюсь)
Но если я удаляю отрицательный запас и кнопка полностью находится в его контейнере - тогда кнопка полностью нажимается на 100% (как верхняя половина, так и нижняя половина)
Как вы можете видеть в анимации (последние кадры) - когда я нажимаю верхнюю половину - ничего не происходит....
Как я могу это исправить?
Возможно, я принял неправильный первоначальный подход?
nb: немного больше визуализации структуры: