2013-11-18 2 views
0

Я хочу программно изменить режим вращения в приложении. Все обсуждения, которые я нашел, касались отключения ротации в конкретных действиях. Я хочу заблокировать весь телефон в портретном режиме. Как это сделать?Запирание телефона в портретном режиме

Редактировать. Чтобы уточнить, я хочу заблокировать весь телефон, включая все другие приложения, настройки и т. Д. Не только мое собственное приложение.

ответ

1

Добавьте следующие строки в деятельности OnCreate:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 
+0

Я отредактировал мое сообщение, чтобы быть более четким. Я не хочу, чтобы мое приложение было портретировано. – MikkoP

0

Самый простой, быстрый и гарантированный к работе способ сделать это, чтобы определить родительский класс активность:

public class MyActivity extends Activity { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 
    } 
} 

и то есть все ваши действия наследуют родительскую активность:

активность 1:

public class MainActivity extends MyActivity { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 
} 

активность 2:

public class LoginActivity extends MyActivity { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_login); 
    } 
} 

Таким образом, вам нужно только определить его один раз.

0

В вашем наборе AndroidManifest.xml ...

андроида: screenOrientation = "портрет"

... как атрибут для вашей деятельности/деятельности.

0

Это сообщение должно быть достаточно, чтобы ответить на ваш вопрос :)

stackoverflow.com/questions/582185/

Если вы работаете с фрагментами вы просто должны определить этот раз еще вам нужно определить его в каждом ярлыке деятельности ...

Смежные вопросы