android 材料设计组件,材料设计指南·组件篇(四):Buttons 按钮

按钮

按钮允许用户通过点击进行一些动作或者做出一个选择

463ce5d51eb70b8b94fd18a9cb0ea317.png

用法

相信按钮一定是APP里的老熟人了,除了一般页面上放几个按钮,还常见于一下几种地方:

对话框

模态框

表单

卡片

Toolbar

原则

使用按钮的三个原则

可识别性:这个按钮能不能被点击要告知用户

宜识别性:按钮应该很容易被找到

动作明确性:按下之后做了什么有明确的反馈,状态的变化要清晰

类型

c5a455089b8f08398119f6e6f5926f18.png

文本类按钮(通常用于不太重要的操作)

边框类按钮(一般重要的操作)

填充类按钮(重要操作):样式鲜明,填充颜色还有阴影

切换类按钮:在同样布局和间距下同一组按钮,使用频率较低

按钮的组成

1bbec51954fbba8841ac7aa5992e4b97.png

1A 文本

1C 图标(可选)

2A 文本

2B 边框

2C 图标(可选)

3A 文本

3B 容器

3C 图标(可选)

4A 文本

4C 图标

==注意!文本应只用一行,切记多行!!==

2e4729db9acaca21ee159efa4c1012da.png

层级和位置

层级单独的 突出的按钮

一个页面应当有一个单独的突出的按钮执行最主要的操作,同时在其他按钮中鹤立鸡群,吸引着用户的注意力

其他按钮

同一页面可以有多个按钮,但应当是有一个是最突出的,其次根据操作的重要程度,设置不同的突显程度以执行一些不那么重要的操作.当使用多个按钮时,按钮能否被点击应当明显的表示出来.

位置

多个类型的按钮同时出现

40954d0a0b57ac347ff4a79adb025136.png

最重要的浮动按钮

较重要的操作

不那么重要

f21b2bf8b76f44662cf5f4cc8af9f3b1.png

44bb74f39dd9758b111c01538c8c08b6.png

可以

==不行==

层级有所区分

避免同时使用两个填充按钮26e343e2c43b4baefaa586c3e8fc4d42.png

fa70dabb08e6dbe9166a20aa443fa04f.png

可以

可以

2773458c0a66680fe9c69042f538eb4e.png

按钮旁边展示一些细节是可以的

dae51f8e46eed49a8c18db2002f01ac8.png

==不可以,有空间就要并排放==

文字按钮

用法

文字按钮通常用于不太明显的操作,常见于:

对话框

卡片

在卡片里,文本按钮的存在有利于保持用户对与卡片内容的重视

68de815a0453873da900ac98746696ae.png

44c62f9ccc484e12b0791a6598426f6f.png

b287033d755f1b620335a89eeb894fce.png

SnackBar中使用文字按钮

图片背景中使用文字按钮

文字标签

按钮上的文字标签是按钮最重要的元素没有之一,这关乎着用户触摸它会执行怎样的操作

e46ad98a5ed23eb524d3ccdf4cce5f99.png

1c932a4344c9c5660f8f42f578b681ee.png

e380524b3365d7cbe4d5074e25e6653e.png

谨慎使用

==别用==

英文没大写

太长不用,要剪短

位置

文本按钮常见于对话框或者卡片里,因为没有边框或者容器,因此不会分散用户对卡片内容的注意力,你可以把文本按钮放置在这两个位置上:

6cf1a35e13f4c2d9fdcb09219e45f2a7.png

67b61892dea9d398047ffc322754f3c2.png

状态

文本按钮

d1494c3e2c414e99eb34567cafc18871.png

这张图包含了网页上的按钮设计,因为有更多的状态:

可点击状态

不可点击

网页鼠标停留

长按

点击扩散效果

外边框按钮

用法

外边框按钮用于一般重要的操作,这个操作有重要性,但不是最核心的那个

备选性

它是文本按钮的高级选择方案,也是内容按钮的低级选择方案

2aa515cdf8e460db12358201b3f3c661.png

内容

外边框按钮顾名思义,文本外侧有一层边框,边框的设置有两种选择:

宽度根据文字内容而定,左右两边内侧各留出16dp的内边距

根据当前布局而定,自适应父布局的宽度,例如这样:

0807587db6eefbb809337dcbe810e460.png

971c5790d60bd2609a1da3e0a38d3965.png

eae9ff05f0cf26567ad883976421e3c5.png

==不要这样==

谨慎使用

文字不能超过文本框

因为按钮未填充,背景会显示出来

状态

82a02d7b137da00f73b19718141cc223.png

这张图包含了网页上的按钮设计,因此有更多的状态:

可点击状态

不可点击

网页鼠标停留

长按

点击扩散效果

内容按钮

高度吸引用户的按钮,常见于重要功能

1fe89bfe114bdf676c3b087b1529cbc6.png

内容

内容按钮顾名思义,按钮里面填充了呢绒,内容按钮的设置有两种选择:

宽度根据文字内容而定,左右两边内侧各留出16dp的内边距

根据当前布局而定,自适应父布局的宽度,例如这样:

b6122ca23f7c7925276463ded7743f20.png

bab9f2503f5f9c7cd226d4a1784708fb.png

fd204f499cadda86dae997a9e679abd0.png

==不要这样==

可以

文字不能超过文本框

图标

内容按钮可以在文字旁放置一个图标,以引起用户的重视

eabf325d24475b0a093470a8d66910d1.png

5b2fc598a5340062bde469e8d04c7668.png

c6ab3a90c794b4e67cf668cc33f8175f.png

==不要这样==

==不要这样==

不能垂直对齐

两边不可同时出现按钮

阴影和高度

更高的高度与阴影,会凸显这个按钮更为重要

93d50fabc3091a28fdb1f85822d5cb5f.png

状态

47ca68211384ec0cb97f2ffc2a265761.png

这张图包含了网页上的按钮设计,因此有更多的状态:

可点击状态

不可点击

网页鼠标停留

长按

点击扩散效果

切换按钮

用法

切换按钮用于对一组具有相关性质的按钮进行分组,共用同一个容器,一组按钮一次只能选中一个,若选中了一个,其他按钮自动取消选中状态

645822b9c404410d8de816c9e03a483e.png

同某个图标允许被选择和取消选择,该图标就可以用作切换按钮,例如收藏功能:

状态

d7619c319b0fdf09a20ff402daffcfbd.png

主题化

参考APP1: Crane

这个旅行类APP就针对APP整体主题进行了自定义,内容包括颜色,字体和形状

ed22a0a1b6d749f67143226af616dcf7.png

颜色

c70e82c07c4c273e5d84201db05da026.png

容器:#5C1349 不透明度100%

文本:#FFFFFF 不透明度100%

字体

6dae7526ed104864c6968dc5c355a69b.png

字体:Raleway

字形:SemiBold

尺寸:14

形状

5c5f6574455d36510919e00b35d3752d.png

四边角度:18dp

参考APP2: Fortnightly

这个新闻类APP就针对APP整体主题进行了自定义,内容包括颜色,字体

0d502704c8b4dfbddf1026a9e2ffd1ae.png

颜色

3370e6bbca133cbfff939e973cc7e945.png

容器:#FFFFFF 不透明度100%

文本:#661FFF 不透明度100%

字体

0866f230b13397479cc738f05a293fe0.png

字体:Libre Franklin

字形:ExtraBold

尺寸:14

参考APP3: Rally

这个个人财务类APP就针对APP整体主题进行了自定义,内容包括颜色,字体

8ed0d1ef827ebb8142325c68c6251a45.png

颜色

8d1287086a98e05c03ea25d335a53d62.png

容器:#3C3C46 不透明度100%

文本:#FFFFFF 不透明度100%

字体

e785d51690e8a03aeae7c1c733b4fa2d.png

字体:Roboto Condensed

字形:Bold

尺寸:14

参考APP4: Posivibes

这个社交媒体类APP就针对APP整体主题进行了自定义,内容包括颜色,字体和形状

cb25ff0bdbc16875848da5194fe9932c.png

颜色

e89f524e9120867484ef6aa96a518142.png

容器:#000000 不透明度100%

文本:#000000 不透明度100%

字体

8a84d1e9d44b18ed75762a09278b432b.png

字体:Roboto Condensed

字形:Bold

尺寸:14

形状

688917a2077f3c33876304aacb084bef.png

四边角度:0dp

参考APP5: Shrine

这个电商类APP就针对APP整体主题进行了自定义,内容包括颜色,字体和形状

bcdc8909f8ddec92e597190a2ce6fb53.png

颜色

f6854f6c74f5d306c0ffa797632d2c70.png

容器:#FEDBD0 不透明度100%

文本:#442C2E 不透明度100%

图标:#442C2E 不透明度100%

字体

521ff2761fd1a53c66b79db67d96524f.png

字体:Rubik

字形:Medium

尺寸:14

形状

3ea2cddf774cfdd18bc025d113ed7396.png

四边角度:Cut 8dp

参考APP6: Reply

这个电子邮件类APP就针对APP整体主题进行了自定义,内容包括颜色,字体

a6ccc0b3f1b4de5f9d0ca2e60457fb65.png

颜色

9b904fe3d6e8bae6120a42d7e64522b3.png

容器:#344955 不透明度100%

文本:#344955 不透明度100%

背景:#FFFFFF 不透明度100%

图标:#344955 不透明度30%

字体

469f18c6a6c9273153d33f53a7aba903.png

字体:Work Sans

字形:ExtraBold

尺寸:15

尺寸

4258a636427aa795107ada3b641dda67.png

bfc8da8431a22afcb5c810b181480dff.png

代码部分

Button也要写代码吗,这不都用烂了吗?非也,基于materila design 全新设计的新按钮快来看看

用法

android:id="@+id/material_button"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text=/button_label_enabled"/>

android:id="@+id/disabled_material_button"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:enabled="false"

android:text=/button_label_disabled"/>

android:id="@+id/material_unelevated_button"

style=/Widget.MaterialComponents.Button.UnelevatedButton"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text=/unelevated_button_label_enabled"/>

按钮的相应颜色自然是采用了你APP的主题色colorPrimary

主题

各种主题应有尽有

内容填充,有高度

android:id="@+id/material_button"

style=/Widget.MaterialComponents.Button"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text=/button_label_enabled"/>

内容填充,无高度

android:id="@+id/material_unelevated_button"

style=/Widget.MaterialComponents.Button.UnelevatedButton"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text=/unelevated_button_label_enabled"/>

文本按钮

android:id="@+id/material_text_button"

style=/Widget.MaterialComponents.Button.TextButton"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text=/text_button_label_enabled"/>

带图标的内容按钮

android:id="@+id/material_icon_button"

style=/Widget.MaterialComponents.Button.Icon"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text=/icon_button_label_enabled"

app:icon=/icon_24px"/>

带图标的文本按钮

android:id="@+id/material_icon_button"

style=/Widget.MaterialComponents.Button.TextButton.Icon"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text=/icon_button_label_enabled"

app:icon=/icon_24px"/>

属性

d9760fc56a417fb3364aceb56ddeb600.png

一个例子,设置了图标,和图标内边距

android:id="@+id/material_icon_button"

style=/Widget.MaterialComponents.Button.Icon"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text=/icon_button_label_enabled"

app:icon=/icon_24px"

app:iconPadding="8dp"/>

更多内容点击下方

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值