Я пытаюсь сделать что-то, что кажется простым. Я хочу иметь представление карты с меню, которое скользит с нижней части экрана, где настройки (для наложения) могут быть скорректированы. Однако, когда я использую TranslateAnimation для влияния на y позицию LinearLayout (который содержит меню), кнопки в перемещении LinearLayout, но там "область хита" остается в том же положении, как они были перед анимацией.
TranslateAnimation slide = new TranslateAnimation(0,0,0,0);
slide.setDuration(300);
slide.setFillAfter(true);
pullupMenu.startAnimation(slide);
mapContainer.startAnimation(slide);
Я также изучил вставку промежуточных кадров значения marginTop представления, но даже не смог определить, как это было бы сделано.
Любая справка на любом из этих направлений очень ценилась бы.
Анимация в целом - это анимация пикселей виджета. Основываясь на написанном, я подозреваю, что setFillAfter()
просто упорядочивает пиксели pixels так, чтобы они оставались в месте назначения, а не в самом виджете.
Если вы хотите, чтобы анимация действительно приводила к перемещению виджета, вам нужно:
Вы можете увидеть скользящую панель, которая использует данную технику здесь.