Проблема видимости ImageView в относительной компоновке - PullRequest
1 голос
/ 29 июня 2011

Я видел все виды кода, который заставляет меня думать, что мой должен работать, но по некоторым причинам это не так. У меня есть ImageView, который анимирует вертикально вниз другое изображение, и я хочу, чтобы мобильное изображение исчезло после завершения анимации, но это не так. Просмотр изображений 'scanbar' - это вопрос. он устанавливается как невидимый в XML и становится видимым при нажатии кнопки. Мне нужно, чтобы он ушел, когда анимация закончится.

public class scan extends Activity {

EditText Quote;
private static final Random rgenerator = new Random();
ImageView scanbar;
public void scanLine()  {
    // Displays the scanline animation over the wireframe image


    ImageView wireframe;
    scanbar = (ImageView)findViewById(R.id.scanbar);
    wireframe = (ImageView) findViewById(R.id.wireframe);
    scanbar.setVisibility(View.VISIBLE);
    // Super ultra-secret code

}
Animation.AnimationListener scanListener = new Animation.AnimationListener() {

    @Override
    public void onAnimationStart(Animation animation) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onAnimationRepeat(Animation animation) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onAnimationEnd(Animation animation) {
        // TODO Auto-generated method stub
        scanbar.setVisibility(View.INVISIBLE);
        setResults();
    }
};

setResults (); вызов работает правильно, поэтому я знаю, что часть кода выполняется. Кто-нибудь знает, что я делаю не так?

Ответы [ 2 ]

4 голосов
/ 03 августа 2012

Дадим ответ на этот старый вопрос на тот случай, если кто-то наткнется на него, как я.

Проверьте ответ stickupkid здесь: Android, setVisbility не работает в RelativeLayout .Позвоните clearAnimation() на том, что когда-либо просматривает анимация перед вызовом View.INVISIBLE

0 голосов
/ 12 августа 2013

Я могу подтвердить, что: вызов clearAnimation () для представления, выполняющего анимацию, перед вызовом View.INVISIBLE, или GONE выполняет свою задачу.

...