У меня стоит идиотская задача эмулирования табов, абсолютно не свойственных для Android OS
Три активити, на нижней панели у каждой из них соответственно три кнопки, которые их переключают между собой.
Предвижу советы использовать TabWidget - мне он не подходит по ряду причин, если интересно кому - расскажу по каким.
Нашел выход из положения, сверстав нижнюю часть в отдельном xml, подключая его includ'ом, а при нажатии на эти кнопки переключения текущая активити finish() и новая, на которую нажали, вызывается Intentom. Все работает, но проблема в том, что при процессе перехода с одной активити на другую та, с которой уходим (finish()) мгновенно слайдится влево экрана, а новая, которую стартуем, "приезжает" из правой части. Так что эффект переключения закладок присутствует, но эти слайды его портят.
Вопрос - можно ли задать эффект появления/исчезновения активити, что бы просто в один момент исчезала одна и появлялась другая, без эффектов? Я так делал в блэкбэрри, там даже изначально так сделано, а эффекты переходов надо самому "навешивать". Вот сейчас мне понадобилась обратная задача - избавиться от этих эффектов.
Ну, как вариант, можете подсказать другую реализацию табов, но, повторюсь, не при помощи TabWidget'а
Эффекты появления активити
Re: Эффекты появления активити
Отключил
Первый способ заключается в установке флага FLAG_ACTIVITY_NO_ANIMATION
Срабатывает, однако, если первая активити будет финишировать (finish()), как в моем случае, анимация все равно будет появляться
Второй способ сработал на 100%
1) Создаем в values style.xml
2) создаем в нем тему без анимации
3) задаем в манифесте для нужных активити эту тему
4) profit
Первый способ заключается в установке флага FLAG_ACTIVITY_NO_ANIMATION
Код: Выделить всё
private void goToSecondActivity() {
Intent intent = new Intent(this, ActivitySecond.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
startActivity(intent);
}
Второй способ сработал на 100%
1) Создаем в values style.xml
2) создаем в нем тему без анимации
Код: Выделить всё
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="ThemeWithoutAnimation" parent="android:Theme">
<item name="android:windowBackground">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowAnimationStyle">@style/NoAnimationBetweenActivities</item>
</style>
<style name="NoAnimationBetweenActivities"
parent="android:Animation.Activity">
<item name="android:activityOpenEnterAnimation">@null</item>
<item name="android:activityOpenExitAnimation">@null</item>
<item name="android:activityCloseEnterAnimation">@null</item>
<item name="android:activityCloseExitAnimation">@null</item>
<item name="android:taskOpenEnterAnimation">@null</item>
<item name="android:taskOpenExitAnimation">@null</item>
<item name="android:taskCloseEnterAnimation">@null</item>
<item name="android:taskCloseExitAnimation">@null</item>
<item name="android:taskToFrontEnterAnimation">@null</item>
<item name="android:taskToFrontExitAnimation">@null</item>
<item name="android:taskToBackEnterAnimation">@null</item>
<item name="android:taskToBackExitAnimation">@null</item>
</style>
</resources>
Код: Выделить всё
<activity
android:name="ActivitySecond"
android:theme="@style/ThemeWithoutAnimation" >
</activity>
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: Эффекты появления активити
Всегда уважал людей, которые отписываются по решению проблемы если сами нашли выход, а не ограничиваются простым "Тема закрыта, я сам все сделал."
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.
Re: Эффекты появления активити
Аналогично )KamiSempai писал(а):Всегда уважал людей, которые отписываются по решению проблемы если сами нашли выход, а не ограничиваются простым "Тема закрыта, я сам все сделал."
Re: Эффекты появления активити
Вот еще решение. Описано в подробностях. Читайте на здоровье.
http://andreylunevich.blogspot.com/2012/03/android.html
http://andreylunevich.blogspot.com/2012/03/android.html