2016-03-02 3 views
1

J'ai créé des fichiers de ressources de mise en page Android pour le mode paysage pour toutes les tailles d'écran différentes, petites, grandes, moyennes et extra larges, cependant, lorsque je lance l'application, elle ne fonctionne pas mode que la moitié des boutons, les images sont manquantes à l'écran.Mode paysage ne fonctionne pas dans Android Studio

J'ai également inclus la ligne ci-dessous dans le fichier manifeste android.

android:configChanges="keyboardHidden|orientation|screenSize" 

S'il vous plaît des conseils comment je peux faire savoir à andriod quand utiliser le mode paysage et portrait.

Répondre

0

Dans le fichier java d'une activité, voici comment vous pouvez reconnaître si vous êtes en mode paysage ou en mode portrait.

int orientation = getResources().getConfiguration().orientation; 

    if(orientation == Configuration.ORIENTATION_LANDSCAPE) { 
     //do something 
    } else { 
     //do something 
    } 
+0

ne fonctionne toujours pas. veuillez nous conseiller plus loin? –

+0

mis n'importe où après setContentView (R.layout.activity_home); –

+0

ne fonctionne toujours pas fonctionne uniquement en mode portrait. J'ai également créé des dossiers de ressources de mise en page pour chaque mode. S'il vous plaît conseiller plus loin? –

0

okay Je donne un exemple ..... j'ai eu une imageview dans ma disposition. quand je vais en mode portrait, une image est définie. et quand je vais en mode paysage, il change pour une autre image.

ImageView headerimage= (ImageView) findViewById(R.id.headerimage); 
int orientation = getResources().getConfiguration().orientation; 

if(orientation == Configuration.ORIENTATION_LANDSCAPE) { 
    headerimage.setBackgroundResource(R.drawable.splash_icon_landscape); 
} else { 
    headerimage.setBackgroundResource (R.drawable.splash_icon_portrait); 
} 
+0

Je veux faire le contenu complet de tous mes fichiers en mode paysage ainsi que le mode portrait. Il n'y a pas de meilleur moyen car je devrai ajouter ce code pour tous mes éléments. J'ai créé le fichier de ressources de mise en page Android, alors pourquoi cela ne fonctionne pas. –

+0

Ça devrait marcher. Donnez-moi une version d'exemple de votre mise en page xml portrait et paysage –

+0

Fait, j'ai maintenant ajouté mon fichier de mise en page paysage et portrait. –

1

Cela se produit parce que vous avez ajouté dans votre android:configChanges="keyboardHidden|orientation|screenSize" manifeste qui signifie que les changements d'orientation ne se produiront pas d'où votre mise en page du paysage ne s'initialisés. Par défaut, le comportement android est que lorsque le mobile est tourné, l'activité en cours est détruite et un nouveau est créé. Supprimez cette ligne et essayez