Google Material Design 设计分享

2023-11-07

 

Material design 核心思想是把物理世界的体验带进屏幕...还原最贴近真实的体验,达到简洁与直观的效果。

详情请参阅:https://developer.android.com/design/

 

Google对app设计的一些要求案例:

1.用于Google Play列表的高分辨率图标似乎是来自非Android平台(例如非常圆角)的设计转义。在设计Android图标时,请考虑使用不同的形状

欲了解更多信息:

http://www.google.com/design/spec/style/icons.html#icons-product-icons 

2.Android平台使用者所预期的分页切换方式,是轻触分页标题或从荧屏边缘滑动

详情请参阅:

http://developer.android.com/design/building-blocks/tabs.html#scrollable

https://developer.android.com/reference/android/support/v4/view/ViewPager.html

3.排查项目配置文件中,是否有多余的敏感权限,如果有可选择删除

详情请参阅:http://developer.android.com/distribute/essentials/quality/core.html#fn

4.权限弹窗处理 ,如果使用者拒绝授予某项权限,请不要直接将使用者导向程式设定界面,而应该说明为什么程式需要这项权限才能运作

详情请参阅:https://material.io/design/platform-guidance/android-permissions.html#denied-permissions

5.为了与Android平台规范保持一致,请避免模仿与其他平台相关的UI元素,转义或特定行为,例如正确指向插入符号

https://material.io/guidelines/platforms/platform-adaptation.html
https://design.google.com/icons 

6.应用程序的targetSdkVersion必须被设置到最新版本(目前为27),以确保最新的平台行为和应用正确的默认视觉主题

7.应用栏应该蒙上了一层阴影

8.应用程序不应通过展示5星级的图形文字直接或间接索要5星评级,因为这违反了Play商店政策

google对app的设计要求比较严格,以上列出八点但不局限于这八点。

 

再来说说控件的使用,列举Material design设计推荐的一些控件:

约束布局:ConstraintLayout

https://developer.android.com/reference/android/support/constraint/ConstraintLayout

卡片式布局:CardView

https://developer.android.com/reference/android/support/v7/widget/CardView

头部应用:Toolbar

https://developer.android.com/reference/android/widget/Toolbar

应用列表:RecyclerView

https://developer.android.com/reference/android/support/v7/widget/RecyclerView

下拉刷新:SwipeRefreshLayout

https://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout

悬浮按钮:FloatingActionButton

https://developer.android.com/guide/topics/ui/floating-action-button

文本输入框:TextInputLayout

https://developer.android.com/reference/android/support/design/widget/TextInputLayout

开关:SwitchCompat

https://developer.android.com/reference/android/support/v7/widget/SwitchCompat

标签栏:TabLayout

https://developer.android.com/reference/android/support/design/widget/TabLayout

导航菜单:NavigationView

https://developer.android.com/reference/android/support/design/widget/NavigationView

侧滑抽屉:DrawerLayout

https://developer.android.com/training/implementing-navigation/nav-drawer

 

另外再说一下布局的阴影效果和按钮的点击效果:

设置阴影我们可以在布局控件中添加这两个属性:

android:elevation="1dp"

app:elevation="1dp"

布局点击波浪效果可以在控件中添加这个属性:

android:foreground="?android:attr/selectableItemBackground"

按钮点击波浪效果: style="@style/HeadBarStyle"

<!-- 头部应用栏按钮点击效果 -->
<style name="HeadBarStyle">
    <item name="android:layout_width">wrap_content</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:layout_margin">8dp</item>
    <item name="android:padding">8dp</item>
    <item name="android:scaleType">centerInside</item>
    <item name="android:background">@drawable/drawable_head_back_bg</item>
</style>

drawable-v21目录下存放drawable_head_back_bg.xml

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
    android:color="?android:colorAccent">
    <item>
        <shape android:shape="oval">
            <solid android:color="?android:colorPrimary"></solid>
        </shape>
    </item>
</ripple>

这里额外说明一下,Google对一些布局控件的宽高是有规范可参考的

详情链接:https://material.io/design/layout/spacing-methods.html#touch-click-targets

 

最后再送上一波福利,关于Material design图标设计,这里给大家引荐一个Material design图标的网址和Androidstudio的一个Material design Icon插件:

图标参考网址: https://www.materialpalette.com/icons

图标颜色可自定义,大小dp可选择,点击“OK”后图标自动保存至你的项目drawable各个目录下,超级方便且实用。

 

 

 

当app在符合Material design 设计后,它还有机会可以被google推荐至GooglePlay商店本周推荐哦~

 

有关Material Design的更多信息,请参阅:  https://material.io

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Google Material Design 设计分享 的相关文章

随机推荐

  • Docker 安装 Nginx

    方法一 通过 Dockerfile构建 创建Dockerfile 首先 创建目录nginx 用于存放后面的相关东西 edualiyun edualiyun mkdir p nginx www nginx logs nginx conf ww
  • 光纤收发器指示灯及常见问题详解

    一 光纤收发器6指示灯的含义 光纤收发器有6个LED指示灯 它们显示了收发器的工作状态 根据LED所示 就能判断出收发器是否工作正常和可能有什么问题 从而能帮助找出故障 它们的作用分别如下所述 PWR 灯亮表示DC5V电源工作正常 FX 1
  • VisualStudio2019配置OpenCV4.5.0

    目录 一 下载安装OpenCV4 5 0 二 配置环境变量 三 配置VS2019 四 测试代码 五 测试结果 一 下载安装OpenCV4 5 0 1 进入opencv官网 2 点击Release进入Release界面 选择Windows版本
  • unity3d的血量减少和增加的数字显示制作(NGUI)

    首先说明一下为什么要放在NGUI里面讲这节内容 因为即将要用到了一个插件HUD Text 这个插件必须是在已经安装了NGUI的前提下才能安装并使用 首先安装HUD text这个插件 这个插件里面最重要的就是HUD Text这脚本下图红色线标
  • freeswitch/conference分析

    member由conference function进入 1 查找会议 如果会议不存在 则 2 创建会议 创建会议画布 conference video parse layouts 根据conference layouts conf 配置创
  • CentripetalNet: Pursuing High-quality Keypoint Pairs for Object Detection---CVPR 2020

    仅翻译了与目标识别相关的内容 论文地址 https arxiv org pdf 2003 09119 pdf 源码地址 https github com KiveeDong CentripetalNet 目录 Abstract 1 Intr
  • SM3密码杂凑算法和SM2数字签名算法的PDF签名方法

    支持SM3密码杂凑算法和SM2数字签名算法的PDF签名方法 其特征在于 包括以下步骤 1 发送端发送待签名的PDF文档 2 接收端存在签名者的数字证书 接收端获取PDF文档 对签名者的数字证书的有效性进行检查 3 用SM3密码杂凑算法对获取
  • JS Base64 内容,数字加密、解密

    加密 let message Hello World let encoded btoa message console log encoded SGVsbG8gV29ybGQh 解密 let decoded atob encoded con
  • java 判断电脑盘符是否存在

    public static void lkm FileSystemView fileSystemView FileSystemView getFileSystemView 获取FileSystemView对象 File roots File
  • 全套大数据平台个人开发环境手动搭建(CDH版本) 伪分布式

    文章目录 1 简介 2 准备 2 1 关闭防火墙 2 2 免密登陆 3 通用配置 3 1 安装包准备 3 2 统一环境变量配置 1 Hadoop配置 1 1 env文件 1 2 core site xml 1 3 hdfs site xml
  • C# 扫描识别图片中的文字(.NET Framework)

    环境配置 本文以C 及VB NET代码为例 介绍如何扫描并读取图片中的文字 本次程序环境如下 Visual Studio版本要求不低于2017 图片扫描工具 Spire OCR for NET 图片格式 png 这里的图片格式支持JPG P
  • LeetCode初级算法——数组:买卖股票的最佳时机 II

    122 买卖股票的最佳时机 II 给定一个数组 它的第 i 个元素是一支给定股票第 i 天的价格 设计一个算法来计算你所能获取的最大利润 你可以尽可能地完成更多的交易 多次买卖一支股票 注意 你不能同时参与多笔交易 你必须在再次购买前出售掉
  • ora-01536:超出表空间"XXXX"的空间限额的解决办法

    原因 当前使用的用户被数据库限制了在建表的表空间 解决方案 1 alter user 用户名quota 100M on 表空间名 为指定用户在指定表空间上增加100M限额 这个数字可以任意 2 alter user 用户名quota unl
  • 云服务器应用镜像和系统镜像选哪个好?

    很多的新手用户在咨询 云服务器应用镜像和系统镜像选哪个 一般推荐选择安装系统镜像 安装纯净的操作系统 这样的话操作系统是纯净的未安装过任何环境和程序的 方便我们操作 1 服务器的镜像和操作系统是可以直接更换的 我们在阿里云的服务器后台直接就
  • ES6---new Promise()讲解(尤其注意里面的参数resolve、reject)

    ES6 new Promise 讲解 尤其注意里面的参数resolve reject 直接打印出来看看吧 console dir Promise 这么一看就明白了 Promise是一个构造函数 自己身上有all reject resolve
  • CVE-2023-25194漏洞 Apache Kafka Connect JNDI注入漏洞

    Apache Kafka 的最新更新解决的一个漏洞是一个不安全的 Java 反序列化问题 可以利用该漏洞通过身份验证远程执行代码 Apache Kafka 是一个开源分布式事件流平台 被数千家公司用于高性能数据管道 流分析 数据集成和任务关
  • 【机器学习】9、最小二乘法和岭回归

    文章目录 一 最小二乘法 线性回归 1 1 公式 1 2 矩阵 1 3 代码实现 二 岭回归 一 最小二乘法 线性回归 1 1 公式 最小二乘法的本质 公式推导过程 1 2 矩阵 假设我们有n个样本数据 每个数据有p个特征值 然后p个特征值
  • 十大思维导图软件推荐

    1 GitMind GitMind是一款电脑上好用的免费在线思维导图软件 主要功能有大纲视图 一键自动布局 多人云协作 插入富文本 批量管理文件 格式刷 自定义主题 快速查看历史版本 插入关系线 添加概括 一键分享思维导图 多格式文本导出
  • Jmeter—实现识别验证码登录

    在做自动化测试或压力测试时 验证码总是一个问题 在以往的压力测试经历中 测试一般在独立的测试环境中进行 可以放心禁用验证码或使用万能验证码 这个是最实用的 但是 这两天我尝试了一个使用第三方的图形图像识别工具来完成验证码识别并通过Jmete
  • Google Material Design 设计分享

    Material design 核心思想是把物理世界的体验带进屏幕 还原最贴近真实的体验 达到简洁与直观的效果 详情请参阅 https developer android com design Google对app设计的一些要求案例 1 用