Bloquear rotação da tela(RESOLVIDO)

Ola galera alguém sabe como eu faço o bloqueio do visor, tenho um app onde quero fixa apenas a tela menu na posição horizontal ,o resto das telas pode conter rotação normal.

Alguém sabe alguma forma de fazer isso?

Obrigada mas eu já descobri se eu quiser travar ela como paisagem eu coloco no arquivo manifest

ou o invejo

1 curtida

Obrigado Me Ajudou :slight_smile:

que bom pq também me ajudou muito hehehe

Coloco isso no xml da tela que não quero que faça rotação?

ok

Não você irá colocar esta linha no xml manifest na activity da classe (tela) que você deseja travar.

Segue enxemplo abaixo:

<activity android:label="@string/app_name" android:name=".LandscapeActivity" android:screenOrientation="landscape" android:configChanges="orientation" > <intent-filter> <action android:name="Cliente" /> <action android:name="android.intent.action.DEFAULT" /> <category android:name="android.intent.category.CATEGORIA_ANDROID" /> </intent-filter> </activity>

1 curtida

Entendi, coloco no android manifest na activity da classe que quero travar, é isso?

Entendeu certo. colocando assim a tela não irá mais girar na activity denominada.

Só uma observação, existe o portrait, landscape, inverse_portrait e inverse_landscape. Ao fazer o request de um deles a tela ficara fixa nesse.
A partir do Android 3.0 existe o portrait_sensor e landscape_sensor onde ele gira automaticamente para os dois sem destruir a Activity.

Certo, to usando o 2.2

Veja se entendi,

Copio esse código para o Manifest e mudo somente a linha:

android:screenOrientation="landscape"

Para a orientação que eu quero. Eu tenho que fazer isso para cada Activity que desejo não rotacionar?

<activity  android:label="@string/app_name" android:name=".LandscapeActivity" android:screenOrientation="landscape" android:configChanges="orientation" >    
         <intent-filter>    
                    <action android:name="Cliente" />    
                    <action android:name="android.intent.action.DEFAULT" />    
                    <category android:name="android.intent.category.CATEGORIA_ANDROID" />    
          </intent-filter>    
</activity>

Ou declarar isso na tag da application

Como assim, não entendi.

<application android:screenOrientation="landscape" >
<activities>...</activities>
</application>

É no Android Manifest isso, certo?

Meu manifest é esse, como travo na horizontal?

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="br.me.helloworld"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="8" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:label="@string/app_name"
            android:name=".HelloWorldActivity" >
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Amigos, a tela está aparecendo como está no arquivo anexado. O manisfest está assim:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="br.me.helloworld"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="8" />

    <application
        android:screenOrientation="landscape"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:label="@string/app_name"
            android:name=".HelloWorldActivity" 
            android:screenOrientation="landscape"
            android:configChanges="orientation">
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>