[经验总结]material design效果与开发总结
首先贴一个參考过的文章,写的不错: 在低版本号android系统上实现Material design应用
以下是工作中总结出来的,列出了在<5.0的设备是怎样实现material design的一些常见样式的
- 大元素
- 其它还有什么明显的大元素【待补充】
- 下拉刷新【能够实现,类似Gmail下拉刷新的样式】
- SwipeRefreshLayoutDemo 【google官方出的下来刷新。这里是一个样例】
- android-Ultra-Pull-To-Refresh
- Action Bar 【能够实现】
- Google自己的support v7 r21提供的类就可以。主要是Theme.AppCompat
- Floating action button 【能够实现】
- 开源项目 futuresimple/android-floating-action-button 比較合适,唯一的缺点就是值支持API
14以上的系统版本号
- 开源项目 futuresimple/android-floating-action-button 比較合适,唯一的缺点就是值支持API
- Scrolling techniques (滚动)【能够实现】
- 开源项目 NotBoringActionBar
- Navigation drawer (导航抽屉)【能够实现】
- Google自己的support v7 r21提供的类(详细可见Support v7最新版demo里边的AppCompat→Action Bar→Navigation Drawer Toggle)
- 开源项目 kanytu/android-material-drawer-template 有Gmail样式的Navigation Drawer(展开时盖住ActionBar)
- Navigational transitions (导航转换)【可能能够,可是还没有找】
- 分2种:Parent to child, Sibling to sibling
- Tabs (导航标签)【能够实现,可是没有找】
- Bottom sheets (底部窗体)【应该能够,可是还没有找】
- 其它小元素
- 其它还有什么明显的小元素【待补充】
- Ripple Effects【能够实现】
- RippleEffect 开源项目效果最好
- SnackBar【能够实现】
- ColorSelector【能够实现】
- 开源项目MaterialDesignLibrary 里边有这个控件
- Typography 【能够实现,建议先不用】
- 事实上是2种字体:Robot – Latin, Greek, and Cyrillic scripts ;Noto – all other languages
- Color (大色块) 【能够实现】
- 与开发相关的是颜色的使用,Support v7 r21里边仅仅是定义了一个material_blue系列的颜色,并没有将20种色系所有定义到project中。实际开发其中,开发仅仅须要依照google的演示样例自定义颜色就能够了
- Layout: Metrics and Keylines (边距/间距方面的规定) 【能够实现】
- 主要针对设计,实现没有问题
- Tooltips(工具提示) 【能够实现】
- 对于触屏来说,就是长按一个图形button(无文字)会出现一个tooltip
- ActionBar已经实现了这样的机制 。这也是我强烈建议使用Google的ActionBar。而不要自己画一个看着像ActionBar的ActionBar
- Text fields (文本输入) 【部分实现】
- Support v7 r21提供的Theme.AppCompat主题已经涵盖了EditText控件,可是至于文字数与颜色变化等小特性我预计是没有的(没有调试),这个待以后补充
- Buttons 【能够实现,详细待调试】
- 这里边有4类buttons: Floating action button, Raised button, Flat button, Pulldown button
- Floating action button见上方,
- Raised button再找下开源项目。本质上是加了一个边缘的阴影
- Flat button主要用于对话框的确定/取消按钮,这个在相关对话框开源项目里边已经有了(眼下没有见到单独用的)
- Pulldown button,看截图感觉和之前的Spinner的下来列表是一样的
- Switches【能够实现。详细待调试】
- 这里边有3类:Checkbox, Radio button, Switch
- Support v7 r21里边Theme.AppCompat里边已经涵盖了上面3种控件的样式,只是颜色仅仅有Light/Drak两种
- 开源的第三方项目里边也有比較灵活的上述控件(自己又一次写的),即能够非常方便的更改颜色
[经验总结]material design效果与开发总结的更多相关文章
- Android学习之基础知识十五 — 最佳UI体验(Material Design实战)
一.前言 长久以来,大多数人都认为Android系统的UI并不美观,至少没有iOS系统的美观.以至于很多IT公司在进行应用界面设计的时候,为了保证双平台的统一性,强制要求Android端的界面风格必须 ...
- Material Design with the Android Design Support Library
Material Design with the Android Design Support Library 原文http://www.sitepoint.com/material-design-a ...
- Android Material Design控件学习(一)——TabLayout的用法
前言 Google官方在14年Google I/O上推出了全新的设计语言--Material Design.一并推出了一系列实现Material Design效果的控件库--Android Desig ...
- material design 的android开源代码整理
material design 的android开源代码整理 1 android (material design 效果的代码库) 地址请点击:MaterialDesignLibrary 效果: 2 ...
- appcompat v21: 让 Android 5.0 前的设备支持 Material Design
1. 十大Material Design开源项目 2. appcompat v21: 让 Android 5.0 前的设备支持 Material Design 主题 AppCompat已经支持最新的调 ...
- Android源码大放送之material design类型
本文转载自:http://www.apkbus.com/android-243232-1-1.html 鉴于大家对源码的渴望,就算自己辛苦一点也要满足大家的需求,查看了几百个源码之后终于筛选出了这些精 ...
- Material Design风格的水波涟漪效果(Ripple Effect)的实现
Material Design是Google在2014年Google I/O大会上推出的一套全新的设计语言,经过接近两年的发展,可谓是以燎原之势影响着整个设计交互生态,和Material Design ...
- [原创]自定义view之:快速开发一款Material Design风格的dialog的开源项目MDDialog
随着google开始主导Material Design风格的设计,越来越多的app开始使用Material Design风格来设计自己的UI.虽然在Android Studio中集成了多种快速开发框架 ...
- Android开发实战之拥有Material Design风格的侧滑布局
在实现开发要求中,有需要会使用抽屉式布局,类似于QQ5.0的侧滑菜单,实现的方式有很多种,可以自定义控件,也可以使用第三方开源库. 同样的谷歌也推出了自己的侧滑组件——DrawLayout,使用方式也 ...
随机推荐
- 解决Django的admin界面中文乱码
解决Django的admin界面中文乱码 问题陈述 最近在做一个很小的Django项目时,使用了自带的sqlite作为数据库.后台admin界面在显示中文数据时,总会遇到乱码.这里截取一小部分代码: ...
- 多线程设计模式 - Future模式之JAVA原生实现
在之前一篇博客中介绍了Future设计模式的设计思想以及具体实现,今天我们来讲一下使用JDK原生的包如何实现. JDK内置的Future主要使用到了Callable接口和FutureTask类. Ca ...
- mysql运维必会的一些知识点整理(转自民工哥)
(1)基础笔试命令考察 1.开启MySQL服务 /etc/init.d/mysqld start service mysqld start systemctl start mysqld 2.检测端口是 ...
- 纠正网上乱传的android调用Webservice方法。
1.写作背景: 笔者想实现android调用webservice,可是网上全是不管对与错乱转载的文章,结果不但不能解决问题,只会让人心烦,所以笔者决定将自己整理好的能用的android调用webser ...
- 【原创】SSAS-引用维度与多数据源、多数据源视图引发分区错误
背景: 最近有个项目,有32家分公司,集团总部需要取这个32家分公司数据做分析,由于每个分公司的数据都比较庞大,所以最终方案是每个分公司一个DW,在cube搭建过程中将每个公司数据作为一个分区数据的来 ...
- MSSQL纵列转横列
在工作中我们一般会遇到将纵列转横列的需求,具体代码: 1.建表 CREATE TABLE [dbo].[AcrossChangeEndLong]( ,) NOT NULL, ) NOT NULL, ) ...
- 给object数组进行排序(排序条件是每个元素对象的属性个数)
从汤姆大叔的博客里看到了6个基础题目:本篇是第3题 - 给object数组进行排序(排序条件是每个元素对象的属性个数) 解题关键: 1.Array.sort的用法 2.object的属性数量的统计 解 ...
- java内存缓存,节省内存
缓存的对象 这个问题就是我们上面提到的极端情况,在Java中,会对-128到127的Integer对象进行缓存,当创建新的Integer对象时,如果符合这个这个范围,并且已有存在的相同值的对象,则返回 ...
- XCTest(一)
target: + 来添加target,可以选择工程中不同的target目标来添加 class: +来添加class, 可以按照不同的测试功能来分类,比如NormalFunctionTest, UI ...
- [置顶]
kubernetes资源类型--PetSets/StatefulSet
PetSet首次在K8S1.4版本中,在1.5更名为StatefulSet.除了改了名字之外,这一API对象并没有太大变化. 注意:以下内容的验证环境为CentOS7.K8S版本1.5.2,并部署Sk ...