Modo de orientación horizontal y vertical
Estoy ejecutando una aplicación en la que estoy ejecutando un audio cuando se hace clic en la imagen, mientras que el audio se está reproduciendo y cambié el modo de paisaje a retrato o de retrato a paisaje y haga clic en la imagen, se reproduce otro clip de audio.
Ejemplo:
- Obtener orientación del teléfono, pero fijar la orientación de la pantalla a
- Cómo persistir grandes datos RecyclerView en los cambios de orientación?
- ActionBar Drop Down navegación - el cambio de orientación pone fragmento incorrecto en
- Retener el oyente tras la rotación de la pantalla - DialogFragment con DatePicker
- El evento onActivityResult del fragmento no se llama después del cambio de orientación
2 audios se están jugando ahora. Pero este problema no se produce haciendo clic en las imágenes en el mismo modo.
¿Hay alguna forma de detener la actividad anterior cuando se cambia el modo?
- Fragmento / Actividad Ciclos de vida y cambio de orientación
- Cómo cambiar la orientación de fragmentos en android
- Cómo dejar de cambiar la orientación cuando una barra de progreso está girando en android
- ¿Qué ocurre con mi técnica de monitorización de sensores?
- Setting targetSdkVersion = "13" hace que las actividades ignoren android: configChanges = "orientation" flag
- ViewPager con diferentes adaptadores para retrato y paisaje
- Segunda instancia de actividad después del cambio de orientación
- RecyclerView no se refresca después de girar el dispositivo con un DialogFragment abierto
Para reproducir archivos de audio, simplemente utilice Servicio no se reproduzca dentro de Actividad, para que pueda detener el servicio para que la canción se detenga. Entonces usted debe centrarse en cómo va a manejar su orientación
- Actividad recreativa
- Cambie la orientación de la orientación.
Mi mejor consejo es que usted debe manejarse. Para eso usted debe utilizar dos cosa:
- Añadir
<activity android:name=".CurrentActivity android:configChanges="keyboardHidden|orientation"> </activity>
2.Call
@Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) { Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show(); } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){ Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show(); } }
Si cambia la orientación, debe manejar el servicio como desee.
Agregue este código en AndroidManifest con la actividad actual en la que se enfrenta al problema, pero esto detendrá el cambio de orientación de la aplicación cuando cambie de orientación, utilizará la orientación actual como estática para ambos modos, pero intente y avíseme.
<activity android:name=".CurrentActivity android:configChanges="keyboardHidden|orientation"> </activity>
He intentado la respuesta de @venky pero mi diseño está perturbado 🙁
Y para el retrato también cuando se cambia la orientación, los botones también no funcionan 🙁
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/bg_prt" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="48dp" android:orientation="vertical" > </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="28dp" android:orientation="horizontal" > <ImageView android:id="@+id/pause1" android:layout_width="30dp" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:src="@drawable/pause" /> <ImageView android:id="@+id/play1" android:layout_width="30dp" android:layout_height="wrap_content" android:layout_marginLeft="40dp" android:src="@drawable/play" /> <ImageView android:id="@+id/home1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="165dp" android:src="@drawable/home" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="315dp" android:orientation="vertical" > <ImageView android:id="@+id/kalma1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:layout_marginLeft="40dp" android:layout_marginTop="20dp" android:src="@drawable/kalma1" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="40dp" android:orientation="horizontal" > <ImageView android:id="@+id/next1" android:layout_width="30dp" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:src="@drawable/forward" /> </LinearLayout>
Es mi xml para retrato y
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/bg_lndscp" android:orientation="vertical" > <ImageView android:id="@+id/kalma1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:layout_marginRight="33dp" android:src="@drawable/kalma1" /> <ImageView android:id="@+id/next1" android:layout_width="30dp" android:layout_height="20dp" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_marginBottom="3dp" android:layout_marginLeft="10dp" android:src="@drawable/forward" /> <ImageView android:id="@+id/play1" android:layout_width="30dp" android:layout_height="20dp" android:layout_marginLeft="65dp" android:layout_marginTop="41dp" android:src="@drawable/play" /> <ImageView android:id="@+id/pause1" android:layout_width="30dp" android:layout_height="20dp" android:layout_marginLeft="10dp" android:layout_marginTop="41dp" android:src="@drawable/pause" /> <ImageView android:id="@+id/home1" android:layout_width="30dp" android:layout_height="20dp" android:layout_alignBottom="@+id/play1" android:layout_alignRight="@+id/kalma1" android:src="@drawable/home" /> </RelativeLayout>
Para el paisaje