天天看点

基于Material Design设计的分享文字图片的APP

写在前面:这个项目是自己当时为了准备面试而做的,由于时间匆忙,水平有限,项目多多少少存在一些问题。代码的整洁性与复用性,以及整体架构的搭建都不尽人意,大家看看里面的一些效果就好。

Material Design–Google在I/O 2014上推出了新的设计语言,核心设计原则就是隐喻,视觉设计,动画。引用基友的话就是,遵循用户体验来实现一些让用户用起来舒适满意的动画效果及设计。CSDN,Github,开源中国上出现了许多优秀的Material Design开源项目,各种好看的库文件也可以直接拿来用,十分方便。

废话不多说,直接上效果图

1.主界面

基于Material Design设计的分享文字图片的APP

主界面搭建:

Toolbar + DrawerLayout实现的菜单侧滑

PagerSlidingTabStrip+viewpager+fragment实现选项卡左右滑动

RippleEffect实现的点击水波纹效果

RoundImageView实现的圆形头像

FloatActiconButton悬浮按钮的实现

参考资料:

<a href="http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0303/2522.html">http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0303/2522.html</a> <a href="http://blog.csdn.net/lmj623565791/article/details/45303349">http://blog.csdn.net/lmj623565791/article/details/45303349</a>

2.滑动变色与下拉缩放

基于Material Design设计的分享文字图片的APP

之前一直想用Toolbar与Palette结合来实现,最后还是采用了监听viewpager的滑动来实现Toolbar的变色

PullToZoomScrollView实现下拉自动放大头部View

参考资料:

<a href="http://blog.csdn.net/bbld_/article/details/41439715">http://blog.csdn.net/bbld_/article/details/41439715</a> <a href="http://www.jcodecraeer.com/a/opensource/2014/1208/2132.html">http://www.jcodecraeer.com/a/opensource/2014/1208/2132.html</a>

3.头像上传

基于Material Design设计的分享文字图片的APP

Material Dialog:Google Material 风格Android对话框,灵活方便

<a href="http://www.open-open.com/lib/view/open1415171087340.html">http://www.open-open.com/lib/view/open1415171087340.html</a>

这里之前一片博客写的很清楚,选择手机相册与拍照上传两种方式

<a href="http://blog.csdn.net/tyk0910/article/details/50236233">http://blog.csdn.net/tyk0910/article/details/50236233</a>

4.修改昵称

修改完昵称以后,记得在其他界面重写onResume()方法来刷新昵称与头像,达到即时更新效果

5.修改密码

TextInputLayout带动画的输入框,这种效果很好的输入框真心值得推荐

<a href="http://www.mamicode.com/info-detail-965904.html">http://www.mamicode.com/info-detail-965904.html</a>

6.发送文字

基于Material Design设计的分享文字图片的APP

这里有个小细节就是初始化界面的时候,会自动定位到你当前的位置,然后自动显示在地址栏。

CircularProgressButton处理耗时的操作的动画button

<a href="http://blog.csdn.net/hongjinqun/article/details/30221201">http://blog.csdn.net/hongjinqun/article/details/30221201</a> <a href="http://blog.csdn.net/tyk0910/article/details/50146149">http://blog.csdn.net/tyk0910/article/details/50146149</a>

7.发送图片

基于Material Design设计的分享文字图片的APP

这个算是APP最难处理的地方了,参考了好多网上的资料进行修改整理,最后达到了这种效果。选择,预览,删除,上传,显示。

8.点击预览

基于Material Design设计的分享文字图片的APP

CollapsingAvatarToolbar 头像随ListView滚动缩回到ActionBar特效

原本想预览页面可以用GridView+ImageView实现,后来看到一篇博客,用Dialog实现的,方便又轻巧

<a href="http://blog.csdn.net/soul_code/article/details/50448443">http://blog.csdn.net/soul_code/article/details/50448443</a>

9.下拉刷新与上拉加载

基于Material Design设计的分享文字图片的APP

需要注意的是分页查询的使用与显示

Android SwipeRefreshLayout下拉刷新与上拉加载,之前一片博客说的很清楚:

<a href="http://blog.csdn.net/tyk0910/article/details/50427531">http://blog.csdn.net/tyk0910/article/details/50427531</a>

10.登录注册

基于Material Design设计的分享文字图片的APP

切换账号的时候,记得清空缓存再进行登录注册。

11.服务器后台

我用的是Bmob后端云,所有数据都是从上面存储与读取的,开发文档很详细。这是部分数据截图

基于Material Design设计的分享文字图片的APP
<a href="http://www.bmob.cn/">http://www.bmob.cn/</a>

12.其他技术

图片的上传,下载,缓存,我用的是Universal-Image-Loader来异步加载网络图片:

<a href="http://blog.csdn.net/tyk0910/article/details/50375070">http://blog.csdn.net/tyk0910/article/details/50375070</a>

回调的使用:

<a href="http://blog.csdn.net/tyk0910/article/details/50564917">http://blog.csdn.net/tyk0910/article/details/50564917</a>

其他就是数据的显示,更新,存储,读取,按照开发文档以及业务逻辑就行

最后就是贴一下使用的库文件以及jar包:

基于Material Design设计的分享文字图片的APP
基于Material Design设计的分享文字图片的APP

继续阅读