Я пытаюсь создать меню, которое скользит с нижней части. Это запускается с представления меню, просто видимого внизу экрана, и затем нажатие на него заставляет его скользить. Я пытался использовать a TranslateAnimation
, но хотя пиксели перемещаются, области хита меню находятся в том же положении как прежде. Таким образом, я думаю, что, если я могу скорректировать поля меню после того, как анимация завершена, это выполнит то, что я хочу. Однако я не могу выяснить, как скорректировать поля.
Я попытался создать a LinearLayout.LayoutMargins
возразите и затем набор его поля и примените его к представлению меню (который является a LinearLayout
), но это не работает.
Какие-либо идеи?
Мое решение состояло в том, чтобы создать два LinearLayout, одно в активном состоянии (установлено как пропало), а другое в неактивном состоянии меню. Затем, когда пользователь нажимает кнопку, чтобы сдвинуть меню вверх, я вызываю TranslateAnimation
, показывающее сдвиг меню вверх. Я помещаю слушателя в анимацию, которая заставляет отображать рабочее состояние, а неактивное состояние исчезает, когда анимация завершается. Я изменил это на «закрывающее» действие.
Не совсем так, как я изначально себе представлял, но это сработало.