Ich versuche ein Menü zu erstellen, das von unten nach oben gleitet. Es beginnt mit der Ansicht des Menüs, die gerade am unteren Rand des Bildschirms sichtbar ist, und dann, wenn Sie darauf klicken, wird es nach oben verschoben. Ich versuchte es mit einem TranslateAnimation
, aber obwohl die Pixel bewegen, sind die Trefferbereiche des Menüs in der gleichen Position wie zuvor. Ich denke also, wenn ich die Ränder des Menüs einstellen kann, nachdem die Animation abgeschlossen ist, wird dies erreichen, was ich will. Ich kann jedoch nicht herausfinden, wie die Ränder angepasst werden.Android - Animiere eine Ansicht topMargin/bottomMargin/etc in LinearLayout oder RelativeLayout
Ich habe versucht, ein LinearLayout.LayoutMargins
Objekt zu erstellen und dann seine Ränder festlegen und es auf die Menüansicht anwenden (das ist ein LinearLayout
), aber das funktioniert nicht.
Irgendwelche Ideen?
Es gibt keine 'LinearLayout.LayoutMargins' Klasse. Ich nehme an, du meinst 'LinearLayout.LayoutParams'. Wenn Sie den Code eingeben könnten, in dem Sie die Parameter anpassen, können wir Ihnen bei der Beantwortung Ihrer Frage helfen. – CommonsWare
Sorry, du hast recht, ich meinte 'LayoutParams'. Ich benutzte eine andere Methode, um das zu erreichen, was ich wollte. Ich habe zwei Ansichten erstellt, eine für den Status "Menü geöffnet" und eine für den Status "Menü geschlossen". Ich benutzte dann eine Übersetzungs-Animation, um das offene Menü nach oben zu schieben und das geschlossene Menü zu verstecken, und umgekehrt. – karnage