2012-03-14 2 views
6

Я хочу скрыть строку состояния в своем приложении, чтобы сделать его полноэкранным, поэтому я использую этот пример Hide Notification bar - он отлично работает. Но если я заблокирую экран, а затем разблокирую его, появится строка состояния, как решить эту проблему?Запретить скрытую строку состояния после повторного появления после блокировки экрана

+0

Вы со ссылкой на сообщение Строка состояния операционной системы Android в верхней части экрана? Тот, который содержит время автономной работы, время, сигнал Wi-Fi и т. Д.? –

+0

Вы добавляете этот атрибут темы в тег активности? может быть, вы должны попробовать в теге приложения, если и не сделали этого. –

+0

Да, я пробовал, он не работает – user1049280

ответ

-2

Написать этот код в файле mainfest.xml вашего aapplication в тег приложения, как показано ниже:

<application android:name="application package" 
      android:label="application name" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"> 
+0

ну, он тоже не работает – user1049280

1

Чтобы скрыть Android Status Bar и бар Название приложения, добавьте следующую строку в файл манифеста:

android:theme="@android:style/Theme.NoTitleBar.Fullscreen"

Пример:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
     package="de.vogella.android.temperature" 
     android:versionCode="1" 
     android:versionName="1.0"> 
    <application android:icon="@drawable/icon" android:label="@string/app_name"> 
     <activity android:name=".Convert" 
        android:label="@string/app_name" 
        android:theme="@android:style/Theme.NoTitleBar.Fullscreen" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

    </application> 
    <uses-sdk android:minSdkVersion="9" /> 

</manifest> 

ОБНОВЛЕНО

Также попытайтесь поместить этот код в соответствующей деятельности после возвращения из LockScreen:

public class FullScreen extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
           WindowManager.LayoutParams.FLAG_FULLSCREEN); 

     setContentView(R.layout.main); 
    } 
} 
+1

Я уже это сделал - он работает только до тех пор, пока я не закрою и не открою экран – user1049280

+0

Обновленный мой ответ, возможно, вам повезло больше. –

+0

нет, он тоже не работает – user1049280

1

Если безопасность не является проблемой, вы можете отключить блокировку экрана во время ваше приложение работает. Добавьте следующую строку в манифесте:

<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/> 

В вашей деятельности, вы можете сделать следующее:

public class MyActivity extends Activity { 
    private KeyguardLock lock; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     // Disable lock screen. 
     KeyguardManager keyGuardManager = (KeyguardManager) getSystemService(KEYGUARD_SERVICE); 
     lock = keyGuardManager.newKeyguardLock("MyActivity"); 
     lock.disableKeyguard(); 
    } 

    @Override 
    protected void onDestroy() { 
     super.onDestroy(); 
     // Reenable the lock screen again. 
     lock.reenableKeyguard(); 
    } 
} 
0

использовать этот код в onCreate() перед тем setContentView()

this.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
Смежные вопросы