在Android项目开发中,不可避免的要遇到自定义的UI,用较好的体验去讨好UED妹子和交互设计师手下留情~几个迭代下来,遇到了不少这样的要求,有简单有复杂。最好的实现方案就是讲业务和UI隔离,封装成独立的UI控件供以后复用。以下列举几个项目中用到的例子,源代码有的已经整理到Github,还有一些需要优化后再整理到GIthub上,暂时先把例子展示出来,待续。。。
目前的项目:嗨健康。各大应用市场免费哦,欢迎下载体验。。。
O、柱状图动态绘制
这个是为了展示计步历史记录的,分周和月两个展示维度,均可滑动,当前页绘制一个展示周期的数据条形图。切换时间时动画动态展示计步数据。3月中旬嗨健康的版本新增计步功能,会很好的展示这个功能。
项目Demo 预览展示:http://t.cn/RGYKviS
一、滑动日期组件:在Github的FancyCoverFlow项目基础上,增加了以下功能。
1.水平时间滑动组件,显示三种日期:历史日期,未来日期,当前日期,其中当前日期背景特定。
2.实现滑动阻断:只能滑动到当前日期,不可滑动到未来日期
3.支持点击选中,未来日期除外。
4.解决了滑动阻断和滑动过程每个项目均会经历选中状态的冲突。利用setCallbackDuringFling(false)则滑动阻断实现不了,才用线程睡眠时间间隔判断的方式.
原Github项目地址:https://github.com/davidschreiber/FancyCoverFlow
改造后的项目地址:https://github.com/RanCustomAndroidUI/FancyCoverFlow
改造后的效果:http://t.cn/RGYKAqM
二、多种样式的节点进度条Demo
每个节点有未发生、当前、历史三种状态。
项目地址:https://github.com/RanCustomAndroidUI/DemoMutiProgress
Demo展示:http://t.cn/RGYK2gU
三、图片重叠水平控件Demo
图片重叠水平控件Demo,自定义控件实现,左面的图像压着右面的。注意如果用传统的GridView去设置,是右面的压着左边的。
项目地址:https://github.com/RanCustomAndroidUI/DemoMutiProgress
Demo展示:http://t.cn/RGYKPpK
四、弧形动画菜单Demo
点击主Button后子Button旋转弹出,每个子Button都可以注册点击事件,并且点击后动画复原。支持长按拖拽,一共有三个拖拽后可放置的位置,弧形会更根据位置自动变化。
项目地址:https://github.com/maoranbian/HiifitUIKit
Demo展示:http://t.cn/RGYouN8