【问题标题】:Full Screen in customize theme全屏自定义主题
【发布时间】:2012-04-09 04:40:30
【问题描述】:

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

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

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

【问题讨论】:

    标签: android android-theme android-styles


    【解决方案1】:

    使用默认主题创建您的自定义主题,像这样

    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>
    

    【讨论】:

    • 这不会全屏显示。你需要 true
    • 如果有人想知道,请把这个放在res/values/styles.xml
    • 当我在 windowFullscreen 设置为 false 的情况下执行此操作时,它的作用与我的预期相反。它使我的对话框完全全屏。而没有自定义主题,我的对话框就很大,几乎占据了整个屏幕(包括宽度和高度)。这是为什么呢?
    【解决方案2】:

    使用父属性创建您的自定义主题,以从一般 android 主题继承 NoTitleBar.Fullscreen 属性。

    值/样式.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】:

      在style.xml中添加

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

      到你的主题。示例:

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

      【讨论】:

        【解决方案4】:

        您可以使用(例如)请求代码中的一些特性和标志:

        @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】:

          在应用样式中设置主题适用于我的 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

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-04-27
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多