Я видел определенные приложения, особенно большинство игр (например, Angry Birds, Temple Run и т.д.), которые запускаются полноэкранным и в альбомном режиме при запуске. Их ориентация никогда не меняется, и они никогда не выходят из полноэкранного режима при касании экрана. Как это сделано? Какие свойства мне нужно изменить или код?
Запуск приложения Android на весь экран и пейзаж
Ответ 1
Если вы предпочитаете использовать XML, вы можете изменить AndroidManifest.xml:
<activity android:name="..."
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
</activity>
Если вы нацеливаете Android SDK 9 или выше, вы можете использовать sensorLandscape
вместо landscape
, что будет означать, что экран будет выглядеть правильно на и нормальной ориентации ландшафта и наоборот ландшафтной ориентации.
Ответ 2
import android.view.Window;
import android.view.WindowManager;
import android.content.pm.ActivityInfo;
@Override public void onCreate(Bundle savedInstanceState)
{
...
// Set window fullscreen and remove title bar, and force landscape orientation
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
...
}
Решение вашей проблемы
Ответ 3
Проблема решена и, основываясь на ответах, приведенных выше, я сделал это,
Шаг 1: В файле manifest.xml
<application
. . .
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
. . .
</application>
Шаг 2: В файле Java я сделал следующие изменения:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
и теперь мое приложение работает в полноэкранном режиме, без каких-либо проблем. Спасибо всем.
Ответ 4
Два быстрых поисковых запроса Google выявили ответы на ваши вопросы.
Включение полноэкранного режима в действие: http://www.androidsnippets.com/how-to-make-an-activity-fullscreen
Силовая ориентация на активность: Чтобы активность Android всегда использовалась в ландшафтном режиме
Ответ 5
Поместите это в onCreate()
в каждый класс активности (экраны):
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
Этот код отключит панель уведомлений Android (тянуть вниз).!!!