java - (Android) API 特定样式?

标签 java android

对于我的 Android 应用程序,我希望我的应用程序在 KitKat(API 级别 19)上具有半透明状态和导航栏。如何使 19 级 API 操作系统具有透明状态/导航栏,而非 KitKat 操作系统具有普通栏。

最佳答案

您需要定义自定义主题,并为 API 级别 19 设置这些属性。

首先,在 res\values 中创建一个 styles.xml 文件

它应该包含以下内容:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="MyCustomTheme" parent="@android:style/Theme">
    </style>
</resources>

根据您想要的基本主题,parent="@android:style/Theme" 可能会有所不同(例如 Theme.LightTheme.Holo Theme.Holo.Light 或其他)。

然后在 res\values-v19 中创建一个类似的 styles.xml 文件,内容如下:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="MyCustomTheme" parent="@android:style/Theme.Holo">
       <item name="android:windowTranslucentStatus">true</item>
       <item name="android:windowTranslucentNavigation">true</item>
    </style>
</resources>

(与之前相同,父级可能不同)。

在您的 AndroidManifest.xml 文件中,查找 application 节点,然后添加/更新主题属性,即

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

关于java - (Android) API 特定样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24191068/

相关文章:

java - 如果关联组件未呈现,可以调用 JSF Bean 的 Setter 吗?

java - wait() 不强制线程等待?

java - 如何使用 Android 设备从 localhost (Mac) 中的服务访问 api

java - android:生成随机数而不重复

android - Espresso - 每次测试方法后 Activity 都会关闭。有没有办法我们不能停止关闭 Activity 和运行其他测试方法

java - 如何使用Web应用程序和Android应用程序处理Spring MVC后端的安全性?

java - 如何在不导入任何 java 库的情况下使直方图更加 OOPy?

java - 有没有办法在从 Java 中的输入流读取时将字节更改为整数?

android - ImageView 在 Camera Surface View 后面移动

java - 为您的 Cloud Endpoints 类生成 API 元数据失败