2012-02-16 3 views
1

J'ai besoin de certaines activités de la mienne pour changer de paysage que si l'écran est assez grand.Android: Changement d'orientation basé sur la taille de l'écran

Cela signifie des tablettes et des téléphones avec une taille d'écran de 5.1in +.

Y at-il de toute façon de le faire par onConfigurationChanged remplaçant (...) et en utilisant l'instruction XML:

android:configChanges="orientation" 
+0

Je pense que vous pouvez utiliser votre propre « espace de noms » même pour votre Manifest.xml – Cehm

Répondre

2

Vous pouvez certainement. Vous pouvez renifler pour la taille de l'écran et en utilisant une instruction if si binaire ou un commutateur autre pour définir l'orientation de la vue manuellement:

Display d = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();   
screenWidth = (int)(d.getWidth()); 
screenHeight = (int)(d.getHeight()); 

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 
+0

Est-ce que Display.getWidth()/getHeight() ne retourne pas la taille en pixels? – bgroenks

+0

assez juste: DisplayMetrics dm = new DisplayMetrics(); –

+0

mainContext.getWindowManager(). GetDefaultDisplay(). GetMetrics (dm) –

Questions connexes