android学习笔记二

在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开头的样式才起作用,所有样式请参考sdkdocs eferenceandroidR.attr.html,

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

原文地址:https://www.cnblogs.com/huidaoli/p/3245784.html