新增一键自动删除所有编译缓存 build 目录的 Window 批处理脚本 clearAllBuildCache.bat ;
getActivity 抽象到 BaseActivity ;
解决条形码与预览框的水平倾角超过 30%识别不了,感谢群友 albert 的贡献;
MVP 架构的 Android 快速开发框架,
提供一套开发标准( View,Data,Event )以及模板和工具类并规范代码。
封装层级少,简单高效兼容性好。
OKHttp、UIL 图片加载、ZXing 二维码、沉浸状态栏、下载安装、自动缓存以及各种 Base、Demo、UI、Util 直接用。
全新的手势,侧滑返回、全局右滑返回都 OUT 啦!
用BaseView,自定义 View 竟然如此简单;
用Entry<K, V>,两个变量的 Model/JavaBean 再也不用写了;
用BaseHttpListActivity,几行代码搞定 http 请求列表 加载和缓存;
还有 100 多个常用style,一行搞定 View 属性,一键统一配置 UI...
点击右边链接查看如何使用http://my.oschina.net/u/2437072/blog/665241
[以下 Gif 图看起来比较卡,实际在手机上 App 运行很流畅]
ZBLibraryDemoApp
ZBLibraryDemoApp.apk(ZBLibrary)
APIJSONApp.apk(APIJSON+ZBLibrary)
可使用 APIJSONAuto 自动化接口管理工具来生成接口相关代码:
https://github.com/TommyLemon/APIJSONAuto
不一样的 Android 选择器,简单方便,地址日期时间都好用!
零门槛! ZBLibrary 仿微信朋友圈自定义 View,就是这么简单!
BaseHttpListActivity,几行代码搞定 Http 列表请求、加载和缓存
ListView 滑动不爽,滚动一页得滑几次?该用分页列表啦!
万能的 Entry,两个变量的 Model/JavaBean 再也不用写了!
Android HTTPS 如何 10 分钟实现自签名 SSL 证书
100 多个 Styles 快速开发布局 XML,一行搞定 View 属性,一键统一配置 UI...
APIJSON 后端接口和文档自动化,前端(客户端) 定制返回 JSON 的数据和结构
APIJSONAuto 自动化接口管理工具,自动生成封装与解析 JSON 的代码
APIJSON-Android-RxJava ZBLibrary(UI) + APIJSON(HTTP) + RxJava(Data)
https://github.com/TommyLemon/Android-ZBLibrary/commits/master
GitHub 右上角点 ⭐Star 支持下吧 ^_^
https://github.com/TommyLemon/Android-ZBLibrary
1
TommyLemon OP 大家有什么问题多多交流哦
|
2
hyyou2010 2018-11-29 10:10:26 +08:00
好全。。。。已 star
|
3
TommyLemon OP @hyyou2010 嘿嘿,感谢
|
4
co3site 2018-11-29 10:17:52 +08:00 via Android
emmm,又想骗我去试水 Android 开发
|
5
TommyLemon OP @co3site 哈哈
|
6
GoodRainChen 2018-11-29 10:31:20 +08:00 2
"能复制就复制,节约时间避免出错"
确认不是“能复用就复用”吗? 复制代码可不是什么好思路... |
7
jesonyang 2018-11-29 10:32:37 +08:00
MVP 时代要过去了,mvvm 的时代来临了!
|
8
TommyLemon OP @GoodRainChen
复制粘贴比起手写能大幅提高效率,以及减少出错的概率。 除了 封装、自动生成代码,应该没有比 复制粘贴 更快的了。 这个思想是由浅入深、逐步递进的关系,后面就提到了 “封装常用代码,方便使用降低耦合” |
9
TommyLemon OP @jesonyang
目前还没看到 Android 有很好用的 MVVM 框架(类似前端的 Vue ),Google 官方推荐的 DataBinding 一直都没火起来。 |
10
ukyoo 2018-11-29 10:45:39 +08:00
传音的啊,我同学在上海传音
|
11
TommyLemon OP @ukyoo 我在深圳,哈哈
|
12
ForkGagHub 2018-11-29 10:50:53 +08:00 8
sb
|
13
TommyLemon OP @ForkGagHub 这么大的人了应该成熟点
|
15
loshine1992 2018-11-29 11:52:02 +08:00
@TommyLemon #9
https://github.com/googlesamples/android-architecture/tree/dev-todo-mvvm-rxjava 用 RxJava 实现的 mvvm,个人觉得还不错 |
16
TommyLemon OP @loshine1992 感谢分享,我去看看
|
17
hnbcinfo 2018-11-29 13:40:19 +08:00
不错,先 star,周末研究下看看
|
18
TommyLemon OP @hnbcinfo 感谢
|
19
yepinf 2018-11-29 15:26:36 +08:00
先 mark, 坐等一份 Ios 版本。
哈哈哈哈 |
20
TommyLemon OP |
21
CrisTao 2018-11-29 16:33:53 +08:00
fork 了一下,整体还不错,加油
|
22
jlkm2010 2018-11-29 16:44:20 +08:00
mvvm 哪里有坑?现在是 gui 开发的主流了,谷歌 databinding 现在也非常成熟了。只不过现在移动端开发不像之前
|
23
jlkm2010 2018-11-29 16:44:55 +08:00
mvvm 哪里有坑?现在是 gui 开发的主流了,谷歌 databinding 现在也非常成熟了。
只不过现在移动端原生开发不像之前那么火热,没多少人关注罢了 |
24
TommyLemon OP @CrisTao 感谢
|
25
bertsir 2018-11-29 17:58:50 +08:00
就说我的怎么今天也多了几个 star https://github.com/bertsir/zBarLibary
|
26
OTWay 2018-11-29 17:59:18 +08:00
全家桶系列~~
|
27
TommyLemon OP @bertsir 哈哈,搜索出来的相似结果
|
28
TommyLemon OP @OTWay
并不是,ZBLibrary 主要是对列表、网格、弹窗等常用组件的封装, 提供 BaseActivity,BaseListActivity, BaseHttpListActivity, BaseFragment,BaseListFragment, BaseHttpListFragment BaseAdapter, BaseView 等, 方便快速开发。 至于 自动化增删改查的后端 ORM 库 APIJSON, 自动化接口管理工具 APIJSONAuto 那都是可选配的,默认不带哈。 |
29
houskii 2018-11-29 18:45:50 +08:00
mvvm 可以看看 airbnb 的 MxRx
|
30
TommyLemon OP @houskii OK,感谢分享
|
31
nicevar 2018-11-30 09:56:30 +08:00
楼主做的不错,有需要的人可以拿来就用,节省不少开发时间,赞一个
|
32
TommyLemon OP @nicevar 感谢支持
|
33
TommyLemon OP @jlkm2010 去 DataBinding 群看看就知道了,自从 Google 宣布将 Kotlin 加入 Android 官方开发语言,
群里就炸锅了,一堆人在纠结要不要 弃用 DataBinding 转到 Kotlin 用 Anko |
34
TommyLemon OP @tanranran DataBinding 的 XML 里面转义字符,以及 bug 难调试等问题确实很烦
|
35
siyehua 2018-11-30 10:50:56 +08:00
谷歌自带的 Architecture 这个框架思想就是 MVVM,DataBding 只是很小的一块,其中以 Lifeclye,ViewModle 为核心的才是真正的 MVVM,DataBinding 的双向绑定很难解决复杂的逻辑,且在 xml ( View 层)绑定数据逻辑,本来就不是一件很好的事情
|
36
Blanke 2018-11-30 10:56:13 +08:00
@siyehua #35 同意,我实际开发使用 MVVM,会用到 google 提供的 lifecycle/ViewModel 等,但是不考虑 DataBinding,感觉还不成熟,xml 写逻辑太难排查问题,达不到 Vue 等使用体验
|
37
TommyLemon OP @siyehua 是的,其实主要还是因为 XML 限制以及实现的问题,像 Vue 在 HTML 标签里内嵌一些判断等代码就很好用
|
38
TommyLemon OP @Blanke 主要还是 XML 内字符转义的问题,
Vue 支持 raw string,在 HTML 里 if,show 等标签里插入 userId && userId > 0 等判断不用转义, DataBinding 写 XML 就得 userId && userId > 0,写法繁琐,还不方便阅读 |
39
TommyLemon OP @ForkGagHub 这种纯粹发泄情绪的评论居然还有 5 个赞?
|
40
baozijun 2019-06-06 13:50:11 +08:00
编程思想
能复制就复制,节约时间避免出错 保留原本结构,简单上手容易调试 增加必要注释,说明功能和使用方法 说明随手可得,不用上网或打开文档 命名必须规范,容易查找一看就懂 重载尽量转发,减少代码容易修改 最先校验参数,任意调用不会崩溃 代码模块分区,方便浏览容易查找 封装常用代码,方便使用降低耦合 回收多余占用,优化内存提高性能 分包结构合理,模块清晰浏览方便 多用工具和快捷键,增删改查快捷高效 mark 一下,谢谢 |