Full Screen in customize theme

2019-02-04 02:03发布

问题:

I need my app to show as full screen. Now I know how to add this feature into the application tag in Mainfest using

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

However, I have my own theme called "CodeFont", and I cannot use two themes in the same application. How I can add this feature into my own style tag in my resources file? There is no such things as an android:style tag.

回答1:

Create your custom theme by using default theme, like this

window with Fullscreen

<style name="generalnotitle" parent="general">
    <item name="android:windowFullscreen">true</item>
</style>

window with NoTitle

<style name="generalnotitle" parent="general">
    <item name="android:windowNoTitle">true</item>
</style>


回答2:

Create your custom theme with parent attribute to inherit NoTitleBar.Fullscreen property from general android theme.

values/styles.xml

<resources> 
   <style name="CodeFont" parent="android:Theme.NoTitleBar.Fullscreen">
      <item name="android:windowNoTitle">true</item> 
      ...
   </style>
</resources>

AndroidManifest.xml

<activity 
    android:name=".MainActivity" 
    android:theme="@style/CodeFont"> 
      ...
</activity>


回答3:

in style.xml add

<item name="android:windowFullscreen">true</item>

to your theme. Example:

<style name="CodeFont" parent="android:Theme.Light">
     <item name="android:windowFullscreen">true</item>
</style>


回答4:

you can request some features and flags in code by using ( for example ):

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getWindow().requestFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.some_layout);
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);


回答5:

Setting up a theme in app styles works for my React Native application. Just type in the android/app/src/main/res/values/styles.xml:

<resources>
    <style name="AppTheme" parent="android:Theme.Material.Light.NoActionBar.Fullscreen"></style>
</resources>

And in the android/app/src/main/AndroidManifest.xml link to this theme:

<application
  ...
  android:theme="@style/AppTheme">

Reference