Что-то действительно странное с функцией setVisibility () - PullRequest
0 голосов
/ 11 января 2020

У меня есть две кнопки, логин и регистрация, я управляю ими по видимости. Они отлично работают. но когда я применяю анимацию появления и затухания и использую setVisibility, чтобы скрыть и показать кнопки. когда я нажимаю кнопку в первый раз, оба входа и входа работают нормально, но после этого происходит нечто действительно странное. когда я нажимаю на кнопку регистрации, она всегда запускается для входа в систему, и я не знаю почему? но я вижу кнопку регистрации на экране, и когда я касаюсь ее (не нажимаю), кнопка входа в систему появляется из ниоткуда, я пробовал AnimationListerners и xml и анимировал программно, но одна и та же проблема возникает каждый раз, пожалуйста, помогите!

здесь xml код fade_in. xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:fillAfter="true">
<alpha
    android:duration="500"
    android:fromAlpha="0.0"
    android:interpolator="@android:anim/accelerate_interpolator"
    android:toAlpha="1.0" />

</set>

fade_out. xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:fillAfter="true" >

<alpha
    android:duration="500"
    android:fromAlpha="1.0"
    android:interpolator="@android:anim/accelerate_interpolator"
    android:toAlpha="0.0" />

</set>

здесь java код для анимации. ploblem `только с signUpCard и loginCard

 fadeIn = AnimationUtils.loadAnimation(this, R.anim.fade_in);
    fadeOut = AnimationUtils.loadAnimation(this, R.anim.fade_out);

    signUpCard.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Log.e(TAG,"signup clicked");
            //signUpCard.setVisibility(View.GONE);
            signUpCard.startAnimation(fadeOut);
            signUpCard.setVisibility(View.GONE);
            loginCard.setVisibility(View.VISIBLE);
            loginCard.startAnimation(fadeIn);
            loginBtn.setVisibility(View.GONE);
            signUpBtn.setVisibility(View.VISIBLE);

        }
    });

    loginCard.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Log.e(TAG,"login clicked");
            signUpCard.setVisibility(View.VISIBLE);
            signUpCard.startAnimation(fadeIn);
            loginCard.startAnimation(fadeOut);
            loginCard.setVisibility(View.GONE);
            loginBtn.setVisibility(View.VISIBLE);
            signUpBtn.setVisibility(View.GONE);
        }
    });

- вот журнал. Я вижу, как кнопка становится видимой и исчезает одна за другой, но когда я первоначально нажимаю signUpCard, она работает нормально, но затем нажимается вход в систему evey time, даже если я нажимаю signUpCard, тогда также нажимается вход в систему. даже если я просто касаюсь SignUpCard (не нажимаю), значит, также и логин работает. Я не знаю, что происходит и почему это происходит. Вот журнал пожалуйста помогите !! enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...