自定义主题全屏

时间:2012-03-25 09:45:08

标签: android android-theme android-styles

我需要将我的应用显示为全屏。现在我知道如何使用

将此功能添加到Mainfest中的应用程序标签中
android:theme=”@android:style/Theme.NoTitleBar.Fullscreen"

但是,我有自己的主题叫做“CodeFont”,我不能在同一个应用程序中使用两个主题。如何在我的资源文件中将此功能添加到我自己的样式标记中?没有像android:style标签这样的东西。

5 个答案:

答案 0 :(得分:68)

使用默认主题创建自定义主题,例如

带有Fullscreen

窗口

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

窗口

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

答案 1 :(得分:9)

使用parent属性创建自定义主题,以从常规android主题继承NoTitleBar.Fullscreen属性。

值/ 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>

答案 2 :(得分:6)

在style.xml中添加

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

到你的主题。例如:

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

答案 3 :(得分:1)

您可以使用(例如):

在代码中请求某些功能和标志
@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);

答案 4 :(得分:0)

在应用程序样式中设置主题适用于我的React Native应用程序。只需输入android/app/src/main/res/values/styles.xml

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

在此主题的android/app/src/main/AndroidManifest.xml链接中:

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

Reference