Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Mantenga la barra de acción estable durante la animación de transición de actividad

Estoy utilizando la barra de acciones en mi aplicación de Android, y estoy utilizando animación deslizante durante la transición de la actividad, llamando a:

startActivityForResult(i, ALL_OK); overridePendingTransition(R.anim.slide_in, R.anim.slide_out); 

Donde en mis archivos xml tengo el siguiente código:

  • ¿Por qué no puede androide gradle encontrar junit? ¿Por qué no lo está buscando en repositorios remotos?
  • Pasar el enfoque de padres a hijos en Linear Layout
  • ¿Por qué LogCat muestra todos los elementos como advertencias (naranja)?
  • StartService de la clase que no extiende Actividad
  • ¿Cómo obtener el número de móvil de la tarjeta SIM actual en el dispositivo real?
  • Falta o imágenes incorrectas y fondos de forma aleatoria durante todo el ciclo de vida de la aplicación
  •  <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromXDelta="100%p" android:toXDelta="0" android:duration="400"/> </set> 

    y

     <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromXDelta="0" android:toXDelta="-100%p" android:duration="400"/> </set> 

    La animación se ejecuta correctamente, pero la diapositiva también incluye la barra de acción.

    ¿Hay alguna manera de que la Barra de Acción se mantenga estable durante la transición de la actividad?

  • ViewPager en CoordinatorLayout se contrae inesperadamente
  • Buscar una ubicación de tarjeta SD externa
  • Honeycomb Android emulador es perro lento - se manejará antes del lanzamiento oficial?
  • Equivalente de iOS NSNotificationCenter en Android?
  • Android DownloadManager API - abrir el archivo después de descargar?
  • Sobre poblar Logcat hace que las ventanas se congelen, hasta que se realice el reinicio duro
  • 2 Solutions collect form web for “Mantenga la barra de acción estable durante la animación de transición de actividad”

    ¿Hay alguna manera de que la Barra de Acción se mantenga estable durante la transición de la actividad?

    No, lo siento. Si está cambiando entre actividades, la interfaz de usuario completa cambia, barra de acción y todo.

    Si el comportamiento de la interfaz de usuario deseado es esencial, vuelva a escribir su aplicación para que tenga una actividad y varios fragmentos y utilice animaciones para realizar la transición entre los fragmentos.

    Puede realizarse en Android Lollipop utilizando Animaciones de transición de actividad , utilizando la misma distribución para la barra de acción en todas las actividades y definiendo la barra de acciones como un elemento compartido de la siguiente manera:

    En primer lugar, asegúrese de activar las transiciones de actividad en v21 / styles.xml y utilizar el tema NoActionBar para crear una barra de acción personalizada:

     <style name="AppTheme.NoActionBar"> ... <!-- enable window content transitions --> <item name="android:windowActivityTransitions">true</item> <!-- specify enter and exit transitions --> <item name="android:windowEnterTransition">@android:transition/slide_right</item> <item name="android:windowExitTransition">@android:transition/slide_left</item> <!-- specify shared element transitions --> <item name="android:windowSharedElementEnterTransition">@transition/app_bar_transform</item> <item name="android:windowSharedElementExitTransition">@transition/app_bar_transform</item> </style> 

    A continuación, defina su app_bar_transform.xml para que sea changeBounds como este:

     <?xml version="1.0" encoding="utf-8"?> <transitionSet> <changeBounds/> </transitionSet> 

    Dado que el diseño de la barra de aplicaciones es el mismo en todas las actividades, no se producirá ninguna transformación.

    En su AppBarLayout personalizado, establezca el atributo android: transitionName:

     <android.support.design.widget.AppBarLayout ... android:id="@+id/app_bar" android:transitionName="appBar" ... </android.support.design.widget.AppBarLayout> 

    Utilice este diseño para la barra de acción en todas sus actividades:

     <include layout="@layout/app_bar"/> 

    A continuación, cuando desee iniciar la siguiente actividad, defina el diseño de la barra de aplicaciones como un elemento compartido como este:

     final Intent intent = new Intent(getApplicationContext(), MainActivity.class); ActivityOptions options = null; if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) { AppBarLayout appBar = (AppBarLayout) findViewById(R.id.app_bar); options = ActivityOptions.makeSceneTransitionAnimation(WelcomeActivity.this, appBar, "appBar"); } ActivityCompat.startActivity(WelcomeActivity.this, intent, options != null ? options.toBundle() : null); 

    Esto mantendrá la barra de aplicaciones en su lugar al realizar la transición entre actividades.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.