我有一个 android list ,其中包含一个我想应用于样式的 Activity :
<activity android:label="@string/app_name" android:name="Language" android:theme="@android:style/Theme.NoTitleBar>
是现在的样子,但在保留 NoTitleBar 属性的同时,我还想添加此属性:
android:style/Theme.Light"
但我对 Android 太陌生了,我搞不懂。
请帮忙!
最佳答案
您不能在您的 list 中一次应用多个主题。
我相信有一个主题 Theme.Light.NoTitleBar
可以满足您的需求 - 但我将在下面向您展示如何轻松地自己执行此操作并进行更多自定义。
您需要做的是创建一个主题,将 Theme.NoTitleBar
或 Theme.Light
作为父主题,并自定义您想要的位 — 在本例中最简单的方法是创建一个以 Theme.Light
作为父主题的主题,然后隐藏标题栏(而不是将 Theme.NoTitleBar
作为父主题,然后必须让一切变得轻盈,这要困难得多!)。
您可以在 values
文件夹中的 themes.xml
文件中使用以下代码执行此操作:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- use the Android Light theme as the base for our own theme -->
<style name="MySuperTheme" parent="@android:style/Theme.Light">
<!-- hide the Window Title -->
<item name="android:windowNoTitle">true</item>
<!-- You could change the scrollbar, checkbox style, anything! -->
</style>
</resources>
然后将 android:theme="@style/MySuperTheme"
用于您的 Activity (或者您甚至可以通过将其放置在应用程序元素上将其应用于整个应用程序——如果您应用样式到单个 Activity ,并为整个应用程序设置一组,然后单个 Activity 的样式将显示为该样式)。
看看 Android themes.xml获取您可以在自己的主题中自定义的所有内容的列表。
您还可以查看所有 Android styles看看它们是如何完成的。
关于android - 如何将多个主题属性添加到 Android Manifest 上的同一个 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5998565/