2012-02-26 3 views
0

У меня есть макет, где заставка запускает запрос от пользователя, а после получения соответствующего ввода он отскакивает от верхней части экрана, раскрывая основной интерфейс приложения. Бит заставки экрана компоновки является RelativeLayout иерархически на том же уровне, что и LinearLayout, который содержит основной интерфейс. Из-за ограничений приложения это не могут быть два отдельных действия. Вот анимационный XML, который я использую, чтобы сделать всплеск всплеска.View Анимация идет под другими видами

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" > 
    <translate 
     android:duration="600" 
     android:fromYDelta="0%" 
     android:toYDelta="-100%" 
     android:startOffset="300" 
    /> 
</set> 

и

launchLayout.startAnimation(mSlideOutTop); 
launchLayout.setVisibility(View.GONE); 

это работает очень хорошо, но это, кажется, как после запуска смещения 300мса когда вид фактически начинает двигаться, все виды из основного макета приложения перемещайтесь перед ним, по оси z. Поэтому вместо того, чтобы сползать вверх, чтобы выявить интерфейс, интерфейс появляется поверх скользящего заставки. Как я могу заставить другие представления оставаться в фоновом режиме до завершения анимации? Благодаря!

ответ

0

Что делать, если вы использовали флиппер вида и встроенную анимацию для Android? Вы можете поместить оба экрана, которые вам нужно отобразить, а затем перевернуть назад и вперед по мере необходимости.

R.anim: http://developer.android.com/reference/android/R.anim.html

Просмотр Flipper: http://developer.android.com/reference/android/widget/ViewFlipper.html

+0

Спасибо, это был элегантный и полезным решением я не знал! – Nick

Смежные вопросы