На самом деле в моем приложении, если я нажимаю на кнопку a LinearLayout
, установите onCreate
на "height:0
", установлен на "height:630
", но анимация отсутствует, и она появляетсямгновенно, так что это не приятно видеть.
Как я могу добавить к нему любую анимацию, например, когда она отскакивает или просто плавно поднимается?
Вот мой код onClick
, где я установилвысота до макета
menu.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ViewGroup.LayoutParams params = recyclerContainner.getLayoutParams();
if(params.height == 0) {
params.height = 630;
recyclerContainner.setLayoutParams(params);
}else {
params.height = 0;
recyclerContainner.setLayoutParams(params);
}
}
});
Я также пытался анимировать его с помощью BounceIterpolator, но он анимирует только содержимое внутри LinearLayout, а неизменение его размера
Вот его код
menu.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ViewGroup.LayoutParams params = recyclerContainner.getLayoutParams();
if(params.height == 0) {
params.height = 630;
recyclerContainner.setLayoutParams(params);
BounceInterpolator bounceInterpolator = new BounceInterpolator();
ObjectAnimator anim = ObjectAnimator.ofFloat(recyclerContainner, "translationY", 100f, 0 );
anim.setInterpolator(bounceInterpolator);
anim.setDuration(1100).start();
}else {
params.height = 0;
recyclerContainner.setLayoutParams(params);
}
}
});