Android Design Support Library v28
1). 依赖
implementation "com.android.support:design:28.0.0-alpha3"
2). MaterialButton
<?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#DDD" tools:context="com.mazaiting.testdemo.design.MaterialButtonActivity"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <!--MaterialButton必须设置textAppearance属性--> <android.support.design.button.MaterialButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="Material Button" android:textAllCaps="false" android:textAppearance="?android:attr/textAppearanceLargeInverse" app:rippleColor="#FF8888" /> <android.support.design.button.MaterialButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:backgroundTint="@color/colorPrimary" android:gravity="center" android:text="Material Button" android:textAllCaps="false" android:textAppearance="?android:attr/textAppearanceLargeInverse" /> <android.support.design.button.MaterialButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="Material Button" android:textAllCaps="false" android:textAppearance="?android:attr/textAppearanceLargeInverse" app:cornerRadius="10dp" /> <android.support.design.button.MaterialButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center" android:text="Material Button" android:textAllCaps="false" android:textAppearance="?android:attr/textAppearanceLargeInverse" app:icon="@mipmap/ic_launcher" app:iconSize="30dp" /> <android.support.design.button.MaterialButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center" android:text="Material Button" android:textAllCaps="false" android:textAppearance="?android:attr/textAppearanceLargeInverse" app:icon="@mipmap/ic_launcher" app:iconSize="30dp" app:iconTint="@color/colorPrimary" /> <android.support.design.button.MaterialButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center" android:text="Material Button" android:textAllCaps="false" android:textAppearance="?android:attr/textAppearanceLargeInverse" app:icon="@mipmap/ic_launcher" app:iconSize="30dp" app:iconTint="@color/colorPrimary" app:strokeColor="@color/colorPrimaryDark" app:strokeWidth="2dp" /> </LinearLayout> </android.support.constraint.ConstraintLayout>
注:MaterialButton必须设置textAppearance属性
MaterialButton属性:
属性 | 介绍 |
---|---|
app:backgroundTint | 按钮背景着色 |
app:backgroundTintMode | 按钮背景的着色模式 |
app:icon | 按钮图标(在文字左边,不能设置位置) |
app:iconSize | 按钮图标大小 |
app:iconPadding | 按钮图标的内边距 |
app:iconTint | 按钮图标着色 |
app:iconTintMode | 按钮图标的着色模式 |
app:additionalPaddingStartForIcon | 按钮图标的左内边距 |
app:additionalPaddingEndForIcon | 按钮图标的右内边距 |
app:strokeColor | 按钮边框颜色 |
app:strokeWidth | 按钮边框宽度 |
app:cornerRadius | 按钮圆角角度 |
app:rippleColor | 按钮点击水波纹效果颜色 |
3). Chip
<?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#DDD" tools:context="com.mazaiting.testdemo.design.ChipActivity"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:orientation="vertical"> <android.support.design.chip.ChipGroup android:id="@+id/chip_group" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="10dp" app:chipSpacing="10dp" app:singleSelection="false"> <android.support.design.chip.Chip android:layout_width="wrap_content" android:layout_height="wrap_content" android:checkable="true" android:clickable="true" android:focusable="true" android:text="Chip" android:textAllCaps="false"/> <android.support.design.chip.Chip android:layout_width="wrap_content" android:layout_height="wrap_content" android:clickable="true" android:focusable="true" android:text="水波纹颜色" android:textAllCaps="false" app:rippleColor="@color/colorAccent"/> <android.support.design.chip.Chip android:layout_width="wrap_content" android:layout_height="wrap_content" android:checkable="true" android:clickable="true" android:focusable="true" android:text="图标" android:textAllCaps="false" app:chipIcon="@mipmap/ic_launcher" app:chipIconEnabled="true" app:chipIconSize="20dp" app:iconStartPadding="5dp" /> <android.support.design.chip.Chip android:id="@+id/chip_close" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checkable="true" android:clickable="true" android:focusable="true" android:text="删除按钮" android:textAllCaps="false" app:closeIconEnabled="true"/> <android.support.design.chip.Chip android:layout_width="wrap_content" android:layout_height="wrap_content" android:checkable="true" android:clickable="true" android:focusable="true" android:text="背景" android:textAllCaps="false" app:chipBackgroundColor="@color/colorAccent"/> <android.support.design.chip.Chip android:layout_width="wrap_content" android:layout_height="wrap_content" android:checkable="true" android:clickable="true" android:focusable="true" android:text="边框" android:textAllCaps="false" app:chipStrokeColor="@color/colorAccent" app:chipStrokeWidth="2dp"/> <android.support.design.chip.Chip android:layout_width="wrap_content" android:layout_height="wrap_content" android:checkable="true" android:clickable="true" android:text="圆角角度" android:textAllCaps="false" app:chipCornerRadius="10dp" android:focusable="true"/> </android.support.design.chip.ChipGroup> </LinearLayout> </android.support.constraint.ConstraintLayout>
ChipGroup属性:
属性 | 介绍 |
---|---|
app:chipSpacing | Chip在水平&垂直方向的间距 |
app:chipSpacingHorizontal | Chip在水平方向的间距 |
app:chipSpacingVertical | Chip在垂直方向的间距 |
app:singleLine | 是否单行显示Chip,默认为false |
app:singleSelection | 是否为单选模式,默认为false |
Chip属性:
属性 | 介绍 |
---|---|
app:chipBackgroundColor | Chip背景颜色 |
app:chipCornerRadius | Chip圆角角度 |
app:chipStrokeColor | Chip边框颜色 |
app:chipStrokeWidth | Chip边框宽度 |
app:rippleColor | Chip点击水波纹效果颜色 |
app:chipIconEnabled | 是否在Chip上显示图标,默认为true |
app:chipIcon | Chip图标(在文字左边,不能设置位置) |
app:chipIconSize | Chip图标大小 |
app:closeIconEnabled | 是否显示Chip关闭按钮,默认为false |
app:closeIcon | Chip关闭按钮图标 |
app:closeIconTint | Chip关闭按钮着色 |
app:closeIconSize | Chip关闭按钮大小 |
app:checkedIconEnabled | 是否显示Chip选中图标,默认为true |
app:checkedIcon | Chip选中图标 |
app:chipStartPadding | Chip左内边距 |
app:chipEndPadding | Chip右内边距 |
app:iconStartPadding | Chip图标左内边距 |
app:iconEndPadding | Chip图标右内边距 |
app:textStartPadding | Chip文字左内边距 |
app:textEndPadding | Chip文字右内边距 |
app:closeIconStartPadding | Chip关闭图标左内边距 |
app:closeIconEndPadding | Chip关闭图标右内边距 |
4). MaterialCardView
<?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#DDD" tools:context="com.mazaiting.testdemo.design.MaterialCardViewActivity"> <LinearLayout android:gravity="center" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.card.MaterialCardView android:layout_margin="20dp" app:cardBackgroundColor="@color/colorAccent" android:layout_width="match_parent" android:layout_height="100dp"> <TextView android:layout_gravity="center" android:text="Material CardView" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </android.support.design.card.MaterialCardView> <android.support.design.card.MaterialCardView android:layout_margin="20dp" app:cardCornerRadius="10dp" app:cardElevation="5dp" android:layout_width="match_parent" android:layout_height="100dp"> <TextView android:layout_gravity="center" android:text="Material CardView" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </android.support.design.card.MaterialCardView> <android.support.design.card.MaterialCardView android:layout_margin="20dp" app:strokeColor="@color/colorAccent" app:strokeWidth="5dp" android:layout_width="match_parent" android:layout_height="100dp"> <TextView android:text="Material CardView" android:layout_gravity="center" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </android.support.design.card.MaterialCardView> </LinearLayout> </android.support.constraint.ConstraintLayout>
MaterialCardView属性:
属性 | 介绍 |
---|---|
app:strokeColor | MaterialCardView边框颜色 |
app:strokeWidth | MaterialCardView边框宽度 |
5). BottomAppBar
<?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.mazaiting.testdemo.design.BottomAppBarActivity"> <android.support.design.widget.CoordinatorLayout android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.FloatingActionButton android:src="@mipmap/ic_launcher" app:fabSize="normal" app:layout_anchor="@id/bottom_app_bar" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <android.support.design.bottomappbar.BottomAppBar android:id="@+id/bottom_app_bar" android:layout_gravity="bottom" app:backgroundTint="@color/colorPrimary" app:fabAlignmentMode="end" app:fabAttached="true" android:layout_width="match_parent" android:layout_height="50dp"/> </android.support.design.widget.CoordinatorLayout> </android.support.constraint.ConstraintLayout>
BottomAppBar属性:
属性 | 介绍 |
---|---|
app:backgroundTint | BottomAppBar背景着色 |
app:fabAlignmentMode | FAB位置(居中或居右),默认为居右 |
app:fabAttached | 是否绑定FAB,默认为true |
app:fabCradleMargin | BottomAppBar与FAB的距离,默认为5dp |
app:fabCradleRoundedCornerRadius | BottomAppBar与FAB相邻处的圆角角度,默认为8dp |
app:fabCradleVerticalOffset | FAB在BottomAppBar中的垂直偏移量,默认为0dp |
代码下载
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
阿里数据iOS端线上错误定位方案演进过程
背景 新版本发布到线上后,随着用户的陆续升级,由于代码bug、接口报错、用户网络问题、脏数据等原因,会陆续收到一些问题反馈。我们开发拿到的信息,可能是复现步骤的描述、错误时的截图等,如何快速定位问题,是我们每一个开发需要思考的。阿里数据iOS端的线上错误定位方案,大致经历了如下三个步骤: 纯人工排查 这是最苦逼的阶段。拿到干瘪的问题描述后,我们的第一招是去复现这个问题,首先从表里跑一遍sql取到用户的操作系统、APP版本信息,然后模拟用户的操作系统、APP版本、网络状态(设置-开发者-Network Link Conditioner)、操作路径、权限状态等去试图复现,如果复现成功就大功告成可以开始修复,如果不行就再试几次... APP上线前一般已经经过比较完整的测试,很容易复现的bug不多见,很可能我们难以复现用户反馈的这个错误。此时第二招是开始分析代码,根据错误结果对着代码开始倒推错误前经历了什么,试图找出不合适的处理逻辑、不够健壮的代码或不按预期返回数据的接口,此法效率低耗时不可控,甚至可能无法推断出最终原因。 如果能拿到出错的设备且在用户手机上容易复现,那就有兜底方案了,我们阿里...
- 下一篇
iOS开发之使用Git的基本使用(一)
现在越来越多的公司采用了Git作为版本管理工具,相对于传统的SVN,Git有着明显的优势,今天写一篇入门文章,教大家如何将自己写好的iOS项目通过Git传到GitHub账户上。 一、GitHub准备工作 在GitHub上创建一个属于自己的账户 首先打开 GitHub进行注册 GitHub网站.jpg 创建好帐号以后,登录并点击+创建一个新的repository 创建repository.jpg 简单的话,只需要填写如下信息 填写信息.jpg 然后点击Create按钮创建,此时会出现如下的界面 创建完成.jpg 这里面都是Git常用的命令,至此GitHub准备工作完成。 注意 复制图中箭头指向的那句指令 该网页不要关闭,备用 二、项目准备工作 在你的代码目录下(此处以桌面为例)建一个新的目录(文件夹,此处为testGit) 打开终端,切换到上面的文件夹,使用 git init命令初始化 初始化.jpg 用Xcode创建一个iOS项目,该项目就放在刚刚新建的文件夹下 在Xcode里面选择菜单Source Control下的commit 选择Xcode菜单.jpg 然后填写相关的日志信息后提...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- CentOS关闭SELinux安全模块
- Hadoop3单机部署,实现最简伪集群
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2整合Redis,开启缓存,提高访问速度