[经验总结]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,使用方式也 ...
随机推荐
- STM in Haskell
Software Transactional Memory,软件事务内存管理(应该是这么翻译的吧T_T) 类似于数据库的事务,所有的操作都有log,最后验证其他线程是否对数据进行修改,要是有那么就回滚 ...
- Kotlin来了
kotlin优点(主要是代码简洁度) 1.避免空指针异常,其次在一个文件中java方法必须写在class里面,而kotlin则没要求 2.在同一个文件中,有class a则不允许在class外的方法( ...
- Centos 6.3防火墙端口放行
vi /etc/sysconfig/iptables #防火墙增加 -A INPUT -p tcp -m state --state NEW -m tcp --dport -j ACCEPT serv ...
- BufferedInputStream&BufferedOutputStream
使用字符缓冲区相关实现copy文件: public static void main(String[] args) { //创建文件对象指定要拷贝的文件路径(源文件),文件须存在,测试用例不做判断 F ...
- 使用MyQR生成二维码
from MyQR import myqr # 主要用到以下几个参数 # words:文本,可以是一个链接,或者你想说的话 # picture:你用到的图片,作为背景,不然只是一个光秃秃的二维码 # ...
- tkinter 表格
import tkinter from tkinter import ttk root = tkinter.Tk() tree = ttk.Treeview(root, show="head ...
- 常用Mysql查询语句
1.查询数据表中重复记录 select user_name,count(*) as count from user_table group by user_name having count>1 ...
- 【CodeForces 830C】奇怪的降复杂度
[pixiv] https://www.pixiv.net/member_illust.php?mode=medium&illust_id=60638239 description 有n棵竹子 ...
- SQL表操作习题1
建表
- mysql关于数据量大的时候分页分批处理
前几天遇到一个问题是,数据库一开始有24W是信息,需要取出来,进行下载到excel中.一开始遇到的问题是,excel表格行只有65535条行数,远远不够,有人说了很多其他解决方式,为了快速开发我就直接 ...