Penso che questo sia implementabile poiché il comportamento di rotazione dello schermo può raggiungere il livello dell'applicazione.Cambia schermo Orientamento programmaticamente utilizzando un pulsante
risposta
Sì, è implementabile!
ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
ActivityInfo.SCREEN_ORIENTATION_PORTRAIT
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
ActivityInfo
http://developer.android.com/reference/android/content/pm/ActivityInfo.html
rinviare la link:
Button buttonSetPortrait = (Button)findViewById(R.id.setPortrait);
Button buttonSetLandscape = (Button)findViewById(R.id.setLandscape);
buttonSetPortrait.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
});
buttonSetLandscape.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
});
http://android-er.blogspot.in/2011/08/set-screen-orientation-programmatically.html
Grazie. Ma questa funzione deve essere eseguita su un dispositivo rooted? Sembra non funzionare sul mio cellulare, ma sul mio tablet rooted. – Sam
No, non è così .. In realtà ho testato il codice in quel collegamento prima di postare. Stava funzionando nel mio dispositivo .. – Hariharan
ok, sì, hai ragione. Ho appena provato un altro dispositivo e funziona bene. bene, il mio Samsung Galaxy Nexus non funziona. Non so perché. – Sam
Sì, è possibile impostare l'orientamento dello schermo programatically ogni volta che si desidera utilizzare:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
rispettivamente per la modalità ritratto e paesaggio. Il metodo setRequestedOrientation() è disponibile per la classe Attività, quindi può essere utilizzato all'interno della tua attività.
e in questo modo si può ottenere l'orientamento dello schermo corrente e impostarlo in maniera adeguata a seconda del suo stato attuale:
Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
final int orientation = display.getOrientation();
// OR: orientation = getRequestedOrientation(); // inside an Activity
// set the screen orientation on button click
Button btn = (Button) findViewById(R.id.yourbutton);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
switch(orientation) {
case Configuration.ORIENTATION_PORTRAIT:
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
break;
case Configuration.ORIENTATION_LANDSCAPE:
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
break;
}
}
});
Tratto da qui: http://techblogon.com/android-screen-orientation-change-rotation-example/
EDIT
Inoltre, puoi ottenere l'orientamento dello schermo utilizzando Configuration
:
Activity.getResources().getConfiguration().orientation
Suggerisco di utilizzare 'getRequestedOrientation()' per ottenere l'orientamento dello schermo corrente: http://stackoverflow.com/a/21909327/1037294 –
Risposta esaustiva. – pdegand59
Consente di impostare l'orientamento dello schermo:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
o
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
e non dimenticate di aggiungere questo al vostro manifesto:
android:configChanges = "orientation"
Ove possibile , per favore non usare SCREEN_ORIENTATION_LANDSCAPE o SCREEN_ORIENTATION_PORTRAIT. Invece usano:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
Questi permettono di orientare il dispositivo sia l'orientamento orizzontale, o uno verticale, rispettivamente. Se hai mai dovuto giocare una partita con un cavo di ricarica che ti viene portato nello stomaco, allora sai esattamente perché avere entrambi gli orientamenti disponibili è importante per l'utente.
Nota: per i telefoni, almeno alcuni che ho controllato, consente solo la modalità verticale "sul lato destro", tuttavia SENSOR_PORTRAIT funziona correttamente sui tablet.
Nota: questa funzionalità è stata introdotta nel API Livello 9, quindi se è necessario supportare 8 o inferiore (non probabile a questo punto), poi invece utilizzare:
setRequestedOrientation(Build.VERSION.SDK_INT < 9 ?
ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE :
ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
setRequestedOrientation(Build.VERSION.SDK_INT < 9 ?
ActivityInfo.SCREEN_ORIENTATION_PORTRAIT :
ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
- 1. Cambia orientamento dello schermo durante la corsa della scimmia
- 2. Cambia (non init) un identificatore UIBarButtonItem programmaticamente?
- 3. Orientamento dello schermo ios
- 4. Cambia coloreControl Colore attivato programmaticamente
- 5. blocco orientamento dello schermo (Android)
- 6. orientamento dello schermo Android al sensore
- 7. Cambia pulsante pulsante ASP.NET
- 8. Chiamare la tastiera su schermo utilizzando un pulsante in C#
- 9. iOS 8 - cambia orientamento in verticale quando si chiude a schermo intero AVPlayerViewController
- 10. orientamento dello schermo Android differisce tra dispositivi
- 11. Android: Orientamento schermo/Rotazione per anteprima fotocamera
- 12. Android Emulator - Orientamento dello schermo non funziona correttamente
- 13. Android: orientamento dello schermo manuale senza riavviare l'attività?
- 14. Cambia stile UiBinder in un altro stile UiBinder Programmaticamente
- 15. Visualizza l'immagine dall'URL: problemi di ridimensionamento e orientamento dello schermo
- 16. pulsante Cambia colore onclick
- 17. imposta programmaticamente la proprietà "Layout to right of" in Android
- 18. Swift - Cambia controller vista utilizzando il pulsante di azione
- 19. Eseguire Segue programmaticamente senza collegamento a pulsante?
- 20. Come licenziare programmaticamente UIAlertController senza alcun pulsante?
- 21. Cambia colore pulsante in AlertDialog
- 22. Cambia jsp sul pulsante clic
- 23. Cambia dimensione: Pulsante radio Android
- 24. cambia immagine pulsante in android
- 25. Orientamento dello schermo orizzontale al ritratto non funzionante
- 26. orientamento schermo android: blocco solo parti del layout
- 27. Come ridimensionare UIView correttamente quando si cambia orientamento?
- 28. Gestisci il layout all'interno di un radiogruppo con orientamento orizzontale
- 29. pulsante Cambia il testo automaticamente quando lo schermo viene ridimensionata con Bootstrap 3
- 30. come gestire gli eventi del pulsante aggiunti programmaticamente? C#
Hai provato questo? : http://stackoverflow.com/questions/14873755/change-screen-orientation-in-android-without-reloading-the-activity –