Android Theme的设置

来源:互联网 发布:python 斜杠 替换 编辑:程序博客网 时间:2024/05/24 01:40

在AndroidManifest.xml文件中,可以对每一个Activity设置android:theme。theme的设置可以设置为系统自带的格式,也可以自定义格式。

A: 系统自带格式

  @android:style/Theme.Black  //背景黑色-有标题-非全屏
 
 @android:style/Theme.Black.NoTitleBar //背景黑色-无标题-非全屏
 
 @android:style/Theme.Black.NoTitleBar.Fullscreen//背景黑色-无标题-全屏显示
 
  @android:style/Theme.Dialog//对话框显示
 
 
 
 @android:style/Theme.InputMethod

  @android:style/Theme.Light    //背景白色-有标题-非全屏
 
 @android:style/Theme.Light.NoTitleBar //背景白色-无标题-非全屏
 
 @android:style/Theme.Light.NoTitleBar.Fullscreen//背景白色-无标题-全屏显示

  @android:style/Theme.Light.Panel
 
 @android:style/Theme.Light.WallpaperSettings //背景透明
 
 @android:style/Theme.NoDisplay

  @android:style/Theme.Translucent.NoTitleBar.Fullscreen//半透明、无标题栏、全屏

  @android:style/Theme.Wallpaper.NoTitleBar.Fullscreen


可以在单个Activity里设置,也可以在applicaiton里全局设置。比如:

<activity

android:screenOrientation="portrait"

android:name=".ui.RegisterActivity"

android:theme="@android:style/Theme.NoTitleBar">

</activity>

 

 

B:也可以自定义

在activity里加入 android:theme="@style/MyTitleBar" 再在 style.xml里加入:

<style name="MyTitleBar" parent="android:Theme">
 
      <item name="android:windowTitleSize">50dip</item>

       <item name="android:windowTitleBackgroundStyle">@style/MyTitleBackground</item>
 
      <item name="android:windowTitleStyle">@style/WindowTitle</item>
</style>

<!-- 自定义标题栏背景图-->
<style name="MyTitleBackground" parent="android:TextAppearance.WindowTitle">
 
  <item name="android:background">@drawable/bg_topbar</item>
</style>

<style name="WindowTitle" parent="android:TextAppearance.WindowTitle">
 
  <item name="android:singleLine">true</item>

</style>

这里的parent是继承于android:Theme,所以在下面的样式里,只能是window开头的样式才起作用,所有样式请参考\sdk\docs\reference\android\R.attr.html。

也可以设置windowTitleBackgroundStyle为@style/MyTitleBackground,这样就可以在MyTitleBackground里,设置背景图啦。



0 0