Не могу отключить переходы

Я пытаюсь не анимировать некоторые из моих переходов. У меня есть этот бит кода:

    TextView pulse = (TextView) findViewById(R.id.pulseText);
    pulse.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            Intent myIntent = new Intent(v.getContext(), Pulse.class);
            startActivityForResult(myIntent, 0);
            finish();
        }
    });

Итак, чтобы остановить анимацию, я добавил это после запуска активности:

overridePendingTransition(0, 0);

Но это вызвало ошибку: «Метод overridePendingTransition(int, int) не определен для типа new View.OnClickListener(){}». Итак, я попытался добавить

`myIntent.addFlags(Intent.FLAG_ACTIVITY_NO_ACTION);`

перед началом действия, но это тоже не сработало. Любые идеи?


person Ben Roby G    schedule 05.08.2011    source источник
comment
Я также пробовал Activity.overridePendingTransition(0,0); и это не сработало.   -  person Ben Roby G    schedule 05.08.2011


Ответы (2)


Попробуйте написать:

ActivityClassName.this.overridePendingTransition(0, 0);

где ActivityClassName — название вашего класса активности

ИЗМЕНИТЬ:

Чтобы запустить Board.class из Pulse.class, вместо записи:

Intent myIntent = new Intent(v.getContext(), Pulse.class);

Должен быть:

Intent myIntent = new Intent(v.getContext(), Board.class);
person Pikaling    schedule 05.08.2011
comment
Я пробовал это, но все еще получаю сообщение о том, что overridePendingTransition(0, 0); не определено для типа Pulse (имя моего класса) - person Ben Roby G; 05.08.2011
comment
Извините за очевидный вопрос, но является ли Pulse подклассом Activity? - person Pikaling; 05.08.2011
comment
Да, это подкласс Activity. - person Ben Roby G; 05.08.2011
comment
Вы запускаете активность Pulse из активности Pulse? - person Pikaling; 05.08.2011
comment
Я пытаюсь запустить Доску активности из Pulse. Когда вы написали ActivityClassName, вы имели в виду класс, к которому я перехожу? - person Ben Roby G; 05.08.2011
comment
Нет, но в этой строке: Intent myIntent = new Intent(v.getContext(), Pulse.class); Вы проходите Pulse.class. Если вы запускаете доску, это должно быть: Intent myIntent = new Intent(v.getContext(), Board.class); - person Pikaling; 05.08.2011
comment
о ничего себе, я не могу поверить, что я только что сделал это. Спасибо, что поймали это. - person Ben Roby G; 05.08.2011
comment
Без проблем! Я обновил свой ответ, чтобы сделать его более понятным для всех, кто ищет. - person Pikaling; 05.08.2011

Вы должны пойти к своему class Pulse

Добавьте в onCreate(Bundle) строку:

overridePendingTransition(0, 0);

и, возможно, вы хотите добавить эту строку в onCreate() всех ваших действий

person Sherif elKhatib    schedule 05.08.2011