android select下拉列表_一个令人惊艳的玩 Android 客户端

1 项目推荐

上个周六休假,日常审核 wanandroid 上的项目,直至看到了该项目:

https://github.com/phoenixsky/fun_android_flutter

先下载 apk 体验一下再说,不夸张的说,用起来非常舒服,一些效果做的非常棒。

下面让我来举例:

全局的色调切换,这个颜色切换非常顺畅:

640?wx_fmt=gif

全局字体修改:

640?wx_fmt=gif

这个下拉效果是我一开始没注意到的,大力下拉一次发现,感觉效果非常赞。

PS:我已经找小缘抽空研究下这个效果了,目测后续的招式会有类似的效果。

640?wx_fmt=gif

列表 loading,顶部还提供了一个下拉列表用于选择:

640?wx_fmt=gif

点赞动效:

640?wx_fmt=gif

开源地址:

https://github.com/phoenixsky/fun_android_flutter

apk下载地址:

https://www.wanandroid.com/blogimgs/16ddfae2-552d-4f14-ae53-7c3269222ed9.apk

https://github.com/phoenixsky/fun_android_flutter/releases/download/0.1.1/FunAndroid_0.1.1.apk

好了,这个项目其实是用 Flutter 写的,可以看到丝滑程度原来没有感受出来和原生的差异。

而且作者在 readme 中说明后续将写大量博客,用来写该项目用到的技术与遇到的问题,感觉一个优秀的专题即将诞生。

2 相关技术介绍

技术相关介绍,我就以作者自己描述为准啦,这里能找到什么?

1. Provider状态管理的最佳实践,虽然Google很早就废弃了Provide,宣布Provider为推荐的状态管理工具,可是在开发中,我们总是会遇到很多问题

  1. 比如Provider的几个衍生类在具体的业务中应该怎么使用?

  2. 页面最初需要的数据什么时候进行初始化,在哪里初始化。

  3. 如何将页面的几个常用状态loading、error、empty、idle、unAuthorized进行组合使用。

  4. 常用的下拉刷新,上拉加载更多应如何服用才能效果更佳

  5. Widget在dispose后,model不再notify()。

2.清晰的代码结构。

让页面归页面,让业务归业务,所有的业务逻辑都在view_model中,Widget只关注页面本身。

3. 不要再满屏幕的setState()。

同一页面内可以利用Flutter框架给我们提供的各种XxxBuilder,来局部刷新。

多层嵌套可使用前边提到的Provider。

当然颗粒度足够细的Widget,还是要使用setState()。eg: ChangeLogPage中的ChangeLogView 功能单一,刷新不会影响别的widget。

4. 实现了App的基础功能,可copy当作模板代码快速开发

  1. 主题切换

  2. 夜间模式切换

  3. 字体切换

  4. 漂亮的骨架屏

  5. 利用IDE插件i18n进行国际化

  6. Dio结合Cookjar,实现玩Android的登录功能

  7. AnimationList结合SmartRefresh的常规数据加载

5. 当然还有WanAndroid本身也有不错的内容,每日闲暇时,可以读一读。

3 一些感受

从开源 wanandroid客户端的数量以及质量来看,真的是超出我个人想象的,我手机上装了很多个开源版本,从 UI 设计、用户体验、功能完善度都远超我的预期,我甚至觉得开放玩 Android 的全部内容数据是我做的最正确的一个决定。

后面我会按照各种技术的分类分别推荐一个开源的项目给大家,例如按照:MVP ,MVVM,JetPack,Kotlin, Flutter,小程序等。

比较开心的是,从这位作者的 readme 看到了这个原生的 wanandroid 项目:

https://github.com/goweii/WanAndroid

作者做这样一个开源项目目的竟然是经常在地铁上阅读,很开心,瞬间感觉网站被认可:

开发初期主要是为了试水一些自己开发的开源框架,但是后面发现本人对这个APP的使用频率还是挺高的,在坐地铁的时候都会拿出来刷一刷文章。所以决定把这个APP做好看,做好用,不至于影响刷文章的心情。

好了,周五了,大家都开心一点吧,一篇轻松的文章,祝你们周末愉快~~

最后,如果你使用过 wanandroid.com,可以谈谈感受和对它的期望,下周会写一篇介绍网站最近的更新以及自己做的一件蠢事。

推荐阅读:

MontionLayout:打开动画新世界大门 HTTP 的架构设计和一些优化的技巧Android 值得深入思考面试问答分享 |  5

640?wx_fmt=jpeg

扫一扫 关注我的公众号

如果你想要跟大家分享你的文章,欢迎投稿~

┏(^0^)┛明天见!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值