Анимация LinearLayout не работает при установке его видимым - PullRequest
0 голосов
/ 22 января 2019

Я пытаюсь анимировать свой LinearLayout от невидимого до видимого и наоборот.Я не знаю почему, но когда я пытаюсь сделать это видимым, анимация не работает, но после задержки, которую я установил для анимации, макет становится видимым.Однако, когда я пытаюсь сделать макет невидимым, он работает.

Я пробовал .clearAnimation (), но он все еще не работает.

            if (linearLayout.getVisibility() == View.INVISIBLE) {
                linearLayout.animate()
                        .translationY(0)
                        .alpha(1.0f)
                        .setDuration(400)
                        .setListener(new AnimatorListenerAdapter() {
                            @Override
                            public void onAnimationEnd(Animator animation) {
                                super.onAnimationEnd(animation);
                                linearLayout.setVisibility(View.VISIBLE);
                                linearLayout.clearAnimation();
                                layoutManager.scrollToPosition(position);
                            }
                        });

            }
            else{
                linearLayout.animate()
                        .translationY(view.getHeight())
                        .alpha(0.0f)
                        .setDuration(400)
                        .setListener(new AnimatorListenerAdapter() {
                            @Override
                            public void onAnimationEnd(Animator animation) {
                                super.onAnimationEnd(animation);
                                linearLayout.clearAnimation();
                                linearLayout.setVisibility(View.INVISIBLE);
                            }
                        });

            }

Я делаю это внутри OnClickListener,Я заметил, что когда я дважды щелкаю, то это работает

...