Android 5.0 M特性 样式设置
来源:互联网 发布:mysql如何添加触发器 编辑:程序博客网 时间:2024/06/10 04:09
修改styles.xml
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- Customize your theme here. --> <!--导航栏底色--> <item name="colorPrimary">@color/accent_material_dark</item> <!--状态栏底色--> <item name="colorPrimaryDark">@color/accent_material_light</item> <!--导航栏上的标题颜色--> <item name="android:textColorPrimary">@android:color/black</item> <!--Activity窗口的颜色--> <item name="android:windowBackground">@color/material_blue_grey_800</item> <!--按钮选中或者点击获得焦点后的颜色--> <item name="colorAccent">#00ff00</item> <!--和 colorAccent相反,正常状态下按钮的颜色--> <item name="colorControlNormal">#ff0000</item> <!--Button按钮正常状态颜色--> <item name="colorButtonNormal">@color/accent_material_light</item> <!--EditText 输入框中字体的颜色--> <item name="editTextColor">@android:color/white</item> </style>
相关属性说明
1.colorPrimary: Toolbar导航栏的底色。
2.colorPrimaryDark:状态栏的底色,注意这里只支持Android5.0以上的手机。
3.textColorPrimary:整个当前Activity的字体的默认颜色。
4.android:windowBackground:当前Activity的窗体颜色。
5.colorAccent:CheckBox,RadioButton,SwitchCompat等控件的点击选中颜色
6.colorControlNormal:CheckBox,RadioButton,SwitchCompat等默认状态的颜色。
7.colorButtonNormal:默认状态下Button按钮的颜色。
8.editTextColor:默认EditView输入框字体的颜色。
一、Flat Button
一个在按下的时候会展现墨水散开的效果但没有凸起效果由墨水形成的按钮。
在 layout.xml内的任意位置声明你的 Button并设置 Borderless 样式.
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" style="@style/Widget.AppCompat.Button.Borderless"/>
如何设置样式?
在你的 styles.xml内定义自定义样式。
<style name="MyButton" parent="Theme.AppCompat.Light"> <item name="colorControlHighlight">@color/pink</item></style>
通过 android:theme属性应用这个样式到你的 Button。
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" android:theme="@style/MyButton" style="@style/Widget.AppCompat.Button.Borderless"/>
二、Raised Button
一个典型的矩形 material 按钮在手指抬起和按下的时候会展现墨水在纸上散开的效果。
在 layout.xml内的任意位置声明你的 Button
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button"/>
如何设置样式?
在你的 styles.xml内定义自定义样式。
<style name="MyButton" parent="Theme.AppCompat.Light"> <item name="colorControlHighlight">@color/indigo</item> <item name="colorButtonNormal">@color/pink</item></style>
通过 android:theme属性应用这个样式到你的 Button。
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" android:theme="@style/MyButton"/>
兼容性问题
I. 切换 Button
按下状态的颜色你可以使用主题的 colorControlHighlight
属性,虽然它仅仅影响 Lollipop 版本的系统。
II. Android elevation
只在 Lollipop 设备上有效,因此你在 Lollipop 之前的设备上将看不到 Button
周围的阴影。
三、Radio Button
在 layout.xml文件内任意位置声明你的RadioButton
<RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="Radio Button"/>
如何设置样式?
在 styles.xml文件内声明你的自定义样式.
<style name="MyRadioButton" parent="Theme.AppCompat.Light"> <item name="colorControlNormal">@color/indigo</item> <item name="colorControlActivated">@color/pink</item></style>
通过 android:theme属性将这个样式应用到你的 RadioButton
<RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="Radio Button" android:theme="@style/MyRadioButton"/>
四、Switch
On/off Switches 切换可以设置单选状态。开关控制的选项,以及它所处的状态,应该通过与它对应一致的内部标签明确地展示出来,以达到与 radio button(单选按钮)相同的视觉效果。
on/off 滑动开关用文字标示 “on” 和 “off” 的做法已被弃用。请用文首所示图例来代替。
在任意的 layout.xml文件内声明你的 SwitchCompat 。
<android.support.v7.widget.SwitchCompat android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" />
SwitchCompat 是 Switch 控件的向下兼容版本。
如何设置样式?
在你的 styles.xml 文件内声明自定义样式。
<style name="MySwitch" parent="Theme.AppCompat.Light"> <!-- active thumb & track color (30% transparency) --> <item name="colorControlActivated">@color/indigo</item> <!-- inactive thumb color --> <item name="colorSwitchThumbNormal">@color/pink</item> <!-- inactive track color (30% transparency) --> <item name="android:colorForeground">@color/grey</item></style>
在你的 SwitchCompat声明里设置 android:theme的属性值为你自定义的样式。
<android.support.v7.widget.SwitchCompat android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:theme="@style/MySwitch" />
Android 会自动给 SwitchCompat 的 colorControlActivated 和 android:colorForeground 增加 30% 的透明度。
五、Text field
允许用户输入文本,选择文本(剪切,复制,粘贴),通过自动补全检索查询数据。
在任意的 layout.xml文件内声明你的 EditText。
<EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Hint text" />
如何设置样式?
在你的 styles.xml文件内声明自定义样式。
<style name="MyEditText" parent="Theme.AppCompat.Light"> <item name="colorControlNormal">@color/indigo</item> <item name="colorControlActivated">@color/pink</item></style>
在你的 EditText声明里设置 android:theme的属性值为你自定义的样式。
<EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Hint text" android:theme="@style/MyEditText" />
兼容性问题
I. 在不同的Android 版本里,EditText的高度和垂直对齐方式是不同的。
II. 行背景在 Android 4.0-4.4和 6.0 上是不透明的,而在 5.0 和 5.1 上是半透明的。
Single-line text field
当输入光标到达输入框右边缘时,文本框的内容会自动滚动到左边。
要让你的 EditText为单行,需要添加 android:singleLine属性,并且设置其值为 true。
<EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:singleLine="true" android:hint="Hint text" />
Multi-line text field 当光标达到输入框边缘时,文本框会为溢出的文字自动增加一行,以使文本可以垂直滚动。
要让你的 EditText为多行,需要添加 android:inputType属性,并且设置其值为 textMultiLine 。
<EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="textMultiLine" android:hint="Hint text" />
Full-width text field
(和父布局等宽)适用于更深入复杂的工作。在你的 styles.xml中声明你自定义的样式。
<style name="FullWidthEditText" parent="Widget.AppCompat.EditText"> <item name="android:padding">20dp</item> <item name="android:background">@null</item> <itemname="android:textSize">@dimen/abc_text_size_subhead_material</item></style>
在你的 EditText声明里设置 style属性值为你自定义的样式。
<EditText style="@style/FullWidthEditText" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Subject" />
六、Check Box
允许用户从一组选项中选择多个选项。
如果你有多个选项出现在列表中,你可以通过使用 Checkboxes 代替 on/off Switches 来节省空间。
如果你只有一个选项,避免使用一个 Checkbox,但是可以使用一个 on/off switch。
在 layout.xml文件内任一位置声明你的 CheckBox
<CheckBox android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="Check Box"/>
如何设置样式?
在 styles.xml文件内声明你的自定义样式.
<style name="MyCheckBox" parent="Theme.AppCompat.Light"> <item name="colorControlNormal">@color/indigo</item> <item name="colorControlActivated">@color/pink</item></style>
将这个样式通过 android:theme属性应用到你的 CheckBox.
<CheckBox android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="Check Box" android:theme="@style/MyCheckBox"/>
原文: http://www.jianshu.com/p/4bf646a627c8
- Android 5.0 M特性 样式设置
- Android 5.0 M特性 样式设置
- Android M新特性
- Android M新特性
- Android M的特性
- Android M 新特性
- Android M 新特性
- Android M 特性大全
- RecyclerView(四)设置分割线样式(Android 5.0 新特性)
- Android M 六大新特性
- android设置Toast样式
- android 设置文字样式
- android设置字体样式
- android SeekBar 样式设置
- android设置字体样式
- android DatePicker样式设置
- Android样式设置总结
- android设置窗口特性
- Linux SVN 命令详解
- 语音合成vocoder(四) aperiodicity参数
- npm版本升级问题
- How I’ve handled multiple screen resolutions in my Unity3D game
- 对象序列化
- Android 5.0 M特性 样式设置
- C++文件读写详解
- Whitelabel error page问题
- 【MOOC】数字信号处理-电子科技大学-第十二周 离散傅里叶变换--FFT算法及应用
- MySQL性能分析及explain的使用
- JAVA基础——HashSet怎样判断元素重复
- 数据库mariadb的基本操作
- 类集
- rex 怎么检查远程运行命令的退出值?