Android开发之style属性和预定义样式-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

Android开发之style属性和预定义样式

简介:

摘要 Android平台定义的主题样式: android:theme="@android:style/Theme.Dialog" // 将一个Activity显示为对话框模式android:theme="@android:style/Theme.NoTitleBar" // 不显示应用程序标题栏android:theme="@android:style/Theme.NoTitleBar.Fullscreen" //

Android平台定义的主题样式:

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

Android平台定义了三种字体大小:

1
2
3
"?android:attr/textAppearanceLarge"
 "?android:attr/textAppearanceMedium"
 "?android:attr/textAppearanceSmall"

Android字体颜色:

1
2
3
4
5
 android:textColor="?android:attr/textColorPrimary"
 android:textColor="?android:attr/textColorSecondary"
 android:textColor="?android:attr/textColorTertiary"
 android:textColor="?android:attr/textColorPrimaryInverse"
 android:textColor="?android:attr/textColorSecondaryInverse"

Android的ProgressBar样式:

1
2
3
4
 style="?android:attr/progressBarStyleHorizontal"
 style="?android:attr/progressBarStyleLarge"
 style="?android:attr/progressBarStyleSmall"
 style="?android:attr/progressBarStyleSmallTitle"

分隔符

横向:

1
2
3
<View android:layout_width="fill_parent"
android:layout_height="1dip"
android:background="?android:attr/listDivider" />

纵向:

1
2
3
<View android:layout_width="1dip"
android:layout_height="fill_parent"
android:background="?android:attr/listDivider" />

CheckBox样式: 
style="?android:attr/starStyle"
类似标题栏效果的TextView

style="?android:attr/listSeparatorTextViewStyle"
其它有用的样式:

1
2
3
4
5
6
 android:layout_height="?android:attr/listPreferredItemHeight"
 android:paddingRight="?android:attr/scrollbarSize"
 style="?android:attr/windowTitleBackgroundStyle"
 style="?android:attr/windowTitleStyle"
 android:layout_height="?android:attr/windowTitleSize"
 android:background="?android:attr/windowBackground"


修改Activity的标题栏样式
如在styles.xml中增加:

1
2
3
4
5
6
7
8
9
<resources>
<style name="AutoWindowTitleBackground">
<item name="android:background">#778899</item>
</style>
<style name="autoWindowTitlebar" parent="android:Theme">
<item name="android:windowTitleSize">32dp</item>
 <item name="android:windowTitleBackgroundStyle">@style/AutoWindowTitleBackground</item>
 </style>
</resources>

接着再修改AndroidManifest.xml文件,找到要自定义标题栏的Activity,添加上android:theme值,比如:

1
2
<activity android:name=".MainActivity"
 android:theme="@style/autoWindowTitlebar">

去掉所有Activity界面的标题栏
修改AndroidManifest.xml

在application 标签中添加:

1
android:theme=”@android:style/Theme.NoTitleBar”

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: