android学习之-Theme和Style

android学习之-Theme和Style

分类: android 2013-10-11 15:01 960人阅读 评论(0) 收藏 举报

android style和theme的使用。
	style:样式,用来描述单独的view控件,改变其样式。
	theme:主题,用来控制整个应用的主题,或者某个activity的主题。

style的使用:改变某控件的样式。
在style.xml中描述样式信息

[java] view plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3. <style name="TextAttr">
  4. <item name="android:textSize">22sp</item>
  5. <item name="android:textColor">#0000CC</item>
  6. </style>
  7. </resources>
在控件(TextView,EditText,Layout)中使用控件来显示其样式。
<TextView
        style="@style/TextAttr"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="样式" />
Theme的使用,用来改变窗体的展示。

[java] view plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3. <style name="TextAttr">
  4. <item name="android:textSize">22sp</item>
  5. <item name="android:textColor">#0000CC</item>
  6. </style>
  7. <style name="ActivityTheme">
  8. <item name="android:windowNoTitle">true</item>
  9. </style>
  10. </resources>
在项目清单中:(应用在activity)

[java] view plaincopy

  1. <application
  2. android:allowBackup="true"
  3. android:icon="@drawable/ic_launcher"
  4. android:label="@string/app_name">
  5. <activity
  6. android:name="com.enterise.always.test.activity.MainActivity"
  7. android:label="@string/app_name"
  8. android:theme="@style/ActivityTheme"
  9. >
  10. <intent-filter>
  11. <action android:name="android.intent.action.MAIN" />
  12. <category android:name="android.intent.category.LAUNCHER" />
  13. </intent-filter>
  14. </activity>
  15. </application>
在项目清单中:(应用在application中)

[java] view plaincopy

  1. <application
  2. android:allowBackup="true"
  3. android:icon="@drawable/ic_launcher"
  4. android:theme="@android:style/Theme.Wallpaper.NoTitleBar.Fullscreen"
  5. android:label="@string/app_name">
@和?的使用:
@符号表明了我们应用的资源是之前有定义过的,或者是android框架中已经定义过的,我们直接对其进行使用。
?引用了当前主题中的值。

[java] view plaincopy

  1. <style name="ActivityTheme">
  2. <item name="android:windowNoTitle">true</item>
  3. <item name="android:windowFullscreen">?android:windowNoTitle</item>
  4. </style>
上述:

[java] view plaincopy

  1. ?android:windowNoTitle
引用的是name=?android:windowNoTitle的值,也就是true。
主题中:

[java] view plaincopy

  1. <activity
  2. android:name="com.enterise.always.test.activity.MainActivity"
  3. android:label="@string/app_name"
  4. android:theme="@style/ActivityTheme"(应用自定义样式)
  5. >

[java] view plaincopy

  1. <activity
  2. android:name="com.enterise.always.test.activity.MainActivity"
  3. android:label="@string/app_name"
  4. android:theme="@android:style/Theme.Wallpaper.NoTitleBar.Fullscreen"(调用系统中的样式,来展示当前的activity主题)
  5. >

[java] view plaincopy

  1. reference--》R。style
  2. Constants
  3. int Animation                                   Base style for animations.
  4. int Animation_Activity                   Standard animations for a full-screen window or activity.
  5. int Animation_Dialog                     Standard animations for a non-full-screen window or activity.
  6. int Animation_InputMethod                    Window animations that are applied to input method overlay windows.
  7. int Animation_Toast
  8. int Animation_Translucent                    Standard animations for a translucent window or activity.
  9. int MediaButton
  10. int MediaButton_Ffwd
  11. int MediaButton_Next
  12. int MediaButton_Pause
  13. int MediaButton_Play
  14. int MediaButton_Previous
  15. int MediaButton_Rew
  16. int TextAppearance
  17. int TextAppearance_DialogWindowTitle
  18. int TextAppearance_Inverse
  19. int TextAppearance_Large
  20. int TextAppearance_Large_Inverse
  21. int TextAppearance_Medium
  22. int TextAppearance_Medium_Inverse
  23. int TextAppearance_Small
  24. int TextAppearance_Small_Inverse
  25. int TextAppearance_Theme
  26. int TextAppearance_Theme_Dialog
  27. int TextAppearance_Widget
  28. int TextAppearance_Widget_Button
  29. int TextAppearance_Widget_DropDownHint
  30. int TextAppearance_Widget_DropDownItem
  31. int TextAppearance_Widget_EditText
  32. int TextAppearance_Widget_IconMenu_Item
  33. int TextAppearance_Widget_TabWidget
  34. int TextAppearance_Widget_TextView
  35. int TextAppearance_Widget_TextView_PopupMenu
  36. int TextAppearance_Widget_TextView_SpinnerItem
  37. int TextAppearance_WindowTitle
  38. int Theme                                                    The default system theme.
  39. int Theme_Black                                Special variation on the default theme that ensures the background is completely black.
  40. int Theme_Black_NoTitleBar                         Variant of the black theme with no title bar
  41. int Theme_Black_NoTitleBar_Fullscreen          Variant of the black theme that has no title bar and fills the entire screen
  42. int Theme_Dialog                                   Default theme for dialog windows and activities, which is used by the Dialog class.
  43. int Theme_InputMethod                          Default theme for input methods, which is used by the InputMethodService class.
  44. int Theme_Light                                Theme for a light background with dark text on top.
  45. int Theme_Light_NoTitleBar                         Variant of the light theme with no title bar
  46. int Theme_Light_NoTitleBar_Fullscreen          Variant of the light theme that has no title bar and fills the entire screen
  47. int Theme_Light_Panel                          Default light theme for panel windows.
  48. int Theme_Light_WallpaperSettings                  Theme for a wallpaper‘s setting activity that is designed to be on top of a light background.
  49. int Theme_NoDisplay                                Default theme for activities that don‘t actually display a UI; that is, they finish themselves before being
  50. resumed.
  51. int Theme_NoTitleBar                           Variant of the default (dark) theme with no title bar
  52. int Theme_NoTitleBar_Fullscreen                Variant of the default (dark) theme that has no title bar and fills the entire screen
  53. int Theme_Panel                                Default dark theme for panel windows.
  54. int Theme_Translucent                          Default theme for translucent activities, that is windows that allow you to see through them to the windows
  55. behind.
  56. int Theme_Translucent_NoTitleBar                   Variant of the translucent theme with no title bar
  57. int Theme_Translucent_NoTitleBar_Fullscreen        Variant of the translucent theme that has no title bar and fills the entire screen
  58. int Theme_Wallpaper                                Default theme for windows that want to have the user‘s selected wallpaper appear behind them.
  59. int Theme_WallpaperSettings                        Theme for a wallpaper‘s setting activity that is designed to be on top of a dark background.
  60. int Theme_Wallpaper_NoTitleBar                 Variant of the translucent theme with no title bar
  61. int Theme_Wallpaper_NoTitleBar_Fullscreen          Variant of the translucent theme that has no title bar and fills the entire screen
  62. int Widget  Widget Styles
  63. int Widget_AbsListView
  64. int Widget_AutoCompleteTextView
  65. int Widget_Button
  66. int Widget_Button_Inset
  67. int Widget_Button_Small
  68. int Widget_Button_Toggle
  69. int Widget_CompoundButton
  70. int Widget_CompoundButton_CheckBox
  71. int Widget_CompoundButton_RadioButton
  72. int Widget_CompoundButton_Star
  73. int Widget_DropDownItem
  74. int Widget_DropDownItem_Spinner
  75. int Widget_EditText
  76. int Widget_ExpandableListView
  77. int Widget_Gallery
  78. int Widget_GridView
  79. int Widget_ImageButton
  80. int Widget_ImageWell
  81. int Widget_KeyboardView
  82. int Widget_ListView
  83. int Widget_ListView_DropDown
  84. int Widget_ListView_Menu
  85. int Widget_ListView_White
  86. int Widget_PopupWindow
  87. int Widget_ProgressBar
  88. int Widget_ProgressBar_Horizontal
  89. int Widget_ProgressBar_Inverse
  90. int Widget_ProgressBar_Large
  91. int Widget_ProgressBar_Large_Inverse
  92. int Widget_ProgressBar_Small
  93. int Widget_ProgressBar_Small_Inverse
  94. int Widget_RatingBar
  95. int Widget_ScrollView
  96. int Widget_SeekBar
  97. int Widget_Spinner
  98. int Widget_TabWidget
  99. int Widget_TextView
  100. int Widget_TextView_PopupMenu
  101. int Widget_TextView_SpinnerItem
  102. int Widget_WebView

[java] view plaincopy

  1. android:theme="@android:style/Theme.Dialog"   将一个Activity显示为对话框模式
  2. android:theme="@android:style/Theme.NoTitleBar"  不显示应用程序标题栏
  3. android:theme="@android:style/Theme.NoTitleBar.Fullscreen"  不显示应用程序标题栏,并全屏
  4. android:theme="@android:style/Theme.Light"  背景为白色
  5. android:theme="@android:style/Theme.Light.NoTitleBar"  白色背景并无标题栏
  6. android:theme="@android:style/Theme.Light.NoTitleBar.Fullscreen"  白色背景,无标题栏,全屏
  7. android:theme="@android:style/Theme.Black"  背景黑色
  8. android:theme="@android:style/Theme.Black.NoTitleBar"  黑色背景并无标题栏
  9. android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"    黑色背景,无标题栏,全屏
  10. android:theme="@android:style/Theme.Wallpaper"  用系统桌面为应用程序背景
  11. android:theme="@android:style/Theme.Wallpaper.NoTitleBar"  用系统桌面为应用程序背景,且无标题栏
  12. android:theme="@android:style/Theme.Wallpaper.NoTitleBar.Fullscreen"  用系统桌面为应用程序背景,无标题栏,全屏
  13. android:theme="@android:style/Translucent"
  14. android:theme="@android:style/Theme.Translucent.NoTitleBar" 半透明,无标题
  15. android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" 半透明,无标题,全屏
  16. android:theme="@android:style/Theme.Panel" 面板风格显示
  17. android:theme="@android:style/Theme.Light.Panel" 平板风格显示

[java] view plaincopy

  1. <img src="http://img.blog.csdn.net/20131011150258187?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhvdWd1b3Nlbl9hbHdheXM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

版权声明:本文为博主原创文章,未经博主允许不得转载。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-12 18:26:55

android学习之-Theme和Style的相关文章

Android开发之Theme、Style探索及源码浅析

1 背景 前段时间群里有伙伴问到了关于Android开发中Theme与Style的问题,当然,这类东西在网上随便一搜一大把模板,所以关于怎么用的问题我想这里也就不做太多的说明了,我们这里把重点放在理解整个Android中Theme.Style的关系及结构,这样我们就能游刃有余的面对实际开发中遇到的很多问题了,也就免得在自定义时遇到各种坑,譬如不清楚该继承哪个parent.不清楚为何背景会有一个黑边等. 本文主要分两部分来进行简单粗略的浅析,首先会围绕Theme与Style的定义及在App开发中的

Android中的Theme和Style

1.首先,Theme属性详解: android:theme="@android:style/Theme.Dialog" //Activity显示为对话框模式 android:theme="@android:style/Theme.NoTitleBar" //不显示应用程序标题栏 android:theme="@android:style/Theme.NoTitleBar.Fullscreen" //不显示应用程序标题栏,并全屏 android:t

Pro Android学习笔记(二四):用户界面和控制(12):Style和Theme

静态格式 在res/values中设置静态的Style,在资源中设置静态Style可使用的HTML格式有<i> <u> <b> <sup> <sub> <strike> <big> <small> <monospace>. <string name="ui_styleText_1"><i>Static</i> style <u>in

【转】Pro Android学习笔记(二四):用户界面和控制(12):Style和Theme

目录(?)[-] 静态格式 代码中设定 Style Theme 静态格式 在res/values中设置静态的Style,在资源中设置静态Style可使用的HTML格式有<i> <u> <b> <sup> <sub> <strike> <big> <small> <monospace>. <string name="ui_styleText_1"><i>St

Android样式(style)和主题(theme)资源介绍-android学习之旅(五十六)

样式(style)资源 代码示例 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="mat

Android学习路线(九)为Action Bar添加Style

这里先贴出原文,下次再来翻译::p 原文地址:http://developer.android.com/training/basics/actionbar/styling.html The action bar provides your users a familiar and predictable way to perform actions and navigate your app, but that doesn't mean it needs to look exactly the

Android Theme and style

每家公司的app都有自己的统一的特色,这就涉及到theme和style,当然他们只不是仅仅为了这个特点存在,想activity的进入动画等都能通过theme和style实现,简单并且减少了代码数,熟练使用theme and style也能做出很炫的效果. what is theme ? 主题是对整个应用中所有的Activity都起作用,或者对指定的Activity起作用 定义格式通常是改变窗口的外观格式,标题,边框等 . what is style ? 为每个View重复地指定字体,颜色等属性,

Android笔记(七十二) Style和Theme

我们尝尝需要使用setText.setColor.setTextSize等属性来设置控件的样式,但是每个控件都需要设置这些属性,工作量无疑是巨大的,并且后期维护起来也不方便. Style Android中的样式(style)包含一组格式,为一个组件设置使用某个样式时,该样式所包含的全部格式都将会应用在这个组件上. Android的样式资源文件放在/res/values目录下,其跟元素是<resources>,该元素内包含多个<style>子元素,每个子元素都是一个样式. <s

如何在android中利用Theme设置application 的所有listview的style?~

今天看VLC的源代码,发现一个很神奇的东西 所有listview的点击效果背景色都是橘黄色 花了点时间找了一下看看怎么实现的. 首先,定义一个<selector> like this: <selector> <item android:state_pressed="true"> <shape android:shape="rectangle"> <solid android:color="@color/