Полноэкранная активность в Android? - PullRequest
546 голосов
/ 19 мая 2010

Как сделать упражнение полноэкранным? Я имею в виду без панели уведомлений. Есть идеи?

Ответы [ 28 ]

953 голосов
/ 19 мая 2010

Вы можете сделать это программно:

public class ActivityName extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // remove title
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
            WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.main);
    }
}

Или вы можете сделать это через файл AndroidManifest.xml:

<activity android:name=".ActivityName"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.NoTitleBar.Fullscreen"/>

Edit:

Если вы используете AppCompatActivity, вам нужно добавить новую тему

<style name="Theme.AppCompat.Light.NoActionBar.FullScreen" parent="@style/Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowActionBar">false</item>
    <item name="android:windowFullscreen">true</item>
    <item name="android:windowContentOverlay">@null</item>
</style>

, а затем используйте его.

<activity android:name=".ActivityName"
    android:label="@string/app_name"
    android:theme="@style/Theme.AppCompat.Light.NoActionBar.Fullscreen"/>

Благодаря https://stackoverflow.com/a/25365193/1646479

121 голосов
/ 12 марта 2014

Существует методика, называемая Полноэкранный режим погружения , доступная в KitKat . Immersive Full-Screen Mode Demo

Пример

73 голосов
/ 03 февраля 2015

Если вы не хотите использовать тему @android:style/Theme.NoTitleBar.Fullscreen, потому что вы уже используете собственную тему, вы можете использовать android:windowFullscreen.

В AndroidManifest.xml:

<activity
  android:name=".ui.activity.MyActivity"
  android:theme="@style/MyTheme">
</activity>

В styles.xml:

<style name="MyTheme"  parent="your parent theme">
  <item name="android:windowNoTitle">true</item>
  <item name="android:windowFullscreen">true</item> 
</style>
46 голосов
/ 28 марта 2013

В AndroidManifest.xml файл:

<activity
    android:name=".Launch"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.NoTitleBar.Fullscreen" > <!-- This line is important -->

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>  

Или в Java код:

protected void onCreate(Bundle savedInstanceState){
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
27 голосов
/ 22 января 2015

Если вы используете AppCompat и ActionBarActivity, используйте эту

getSupportActionBar().hide();

23 голосов
/ 30 сентября 2013

Будьте осторожны с

requestWindowFeature(Window.FEATURE_NO_TITLE);

Если вы используете какой-либо метод для установки панели действий следующим образом:

getSupportActionBar().setHomeButtonEnabled(true);

Это приведет к исключению нулевого указателя.

20 голосов
/ 01 февраля 2016

Попробуйте это с appcompat от style.xml. Может поддерживать со всеми платформами.

<!-- Application theme. -->
<style name="AppTheme.FullScreen" parent="AppTheme">
    <item name="android:windowFullscreen">true</item>
</style>


<!-- Application theme. -->
<style name="AppTheme" parent="@style/Theme.AppCompat.Light.NoActionBar" />
12 голосов
/ 15 марта 2016

Используя Android Studio (текущая версия 2.2.2 на данный момент) очень легко добавить полноэкранное действие.

См. Шаги:

  1. Щелкните правой кнопкой мыши на основном пакете Java> Выберите «Создать»> Выберите «Активность»> Затем нажмите «Полноэкранный режим».

Step one

  1. Настройте действие («Имя действия», «Имя макета» и т. Д.) И нажмите «Готово».

Step two

Готово!

Теперь вы можете легко выполнять полноэкранное действие (см. Класс java и макет упражнения, чтобы узнать, как все это работает)!

7 голосов
/ 01 сентября 2017

Для тех, кто использует AppCompact ... style.xml

 <style name="Xlogo" parent="Theme.AppCompat.DayNight.NoActionBar">
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowFullscreen">true</item>

Тогда впишите имя в манифест ...

6 голосов
/ 18 апреля 2017

Сначала необходимо установить тему приложения с помощью «NoActionBar», как показано ниже

<!-- Application theme. -->
<style name="AppTheme" parent="@style/Theme.AppCompat.Light.NoActionBar" />

Затем добавьте эти строки в полноэкранный режим.

public class MainActiviy extends AppCompatActivity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                                  WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.main);
    }
}

Он будет скрывать панель действий / панель инструментов, а также строку состояния в вашей полноэкранной активности

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...