Android常用框架整理

 

1、网络框架

OKGO

https://github.com/jeasonlzy/okhttp-OkGo

MVParms网络请求全家桶 

好处太多,rx系列很全面Rxjava  Rxandroid RxLifecycle Rxcache ,只是项目中使用的Dagger,关于Dagger个人认为有的人喜欢用这种依赖注入,大大简化了new实例的过程,但有的人不喜欢这种依赖注入,因为给项目添加了很多类。

https://github.com/JessYanCoding/MVPArms

2、数据库框架

数据库方面操作就比较多了,看了一篇不错的文章可以做为参考:

http://blog.csdn.net/da_caoyuan/article/details/61414626

3、RecycleView适配器

万能适配器,可以满足几乎所有常见的列表功能

https://github.com/CymChad/BRVAHST

4、上下拉刷新

 

https://github.com/scwang90/SmartRefreshLayout

补充:解决滑动问题:snaphelper

https://github.com/rubensousa/RecyclerViewSnap

 

5、图片压缩

https://github.com/Curzibn/Luban

 

6、进度加载Dialog

https://github.com/81813780/AVLoadingIndicatorView

7、触摸放缩图片

https://github.com/sephiroth74/ImageViewZoom

8、多图片选择器

https://github.com/lovetuzitong/MultiImageSelector

https://github.com/LuckSiege/PictureSelector

9、Log工具

https://github.com/orhanobut/logger

https://github.com/JakeWharton/timber

10、MultiDex

解决65535

https://developer.android.com/studio/build/multidex.html

11、权限

rxpermission

https://github.com/tbruyelle/RxPermissions

12、layer—list

http://blog.csdn.net/itzhongzi/article/details/52188485

http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2013/0707/1418.html

13、AndroidUtil整理

https://github.com/Blankj/AndroidUtilCode

14、文字工具

https://www.jianshu.com/p/509b0d2626f4

ps:可以用于自己平时测数据

https://www.mocky.io/

15、AndroidStudio好用插件

ButterKnife zelezny  (butterknife 的好助手)

IconViewer  (用来查看图片缩略图)

16、Chrome好用插件

 

Octotree (在github上查看项目的时候会自动生成目录树)

Set Character Encoding

Axure RP Extension for Chrome(在浏览器看产品原型的时候会用到,如果产品原型是用墨刀做的那就没必要了)

JSON-handle

17、日期选择控件

https://github.com/liuwan1992/CustomDatePicker

18、底部导航栏

https://github.com/ittianyu/BottomNavigationViewEx

19、日历控件

https://github.com/MagicMashRoom/SuperCalendar

20、ARouter路由器

路由器刚出的时候看过一点,没有尝试,最近公司封装的module里面需要从module的activity跳转到主项目里的某个Activity里面,尝试了一下,使用简单且方便,太给力了!

https://github.com/alibaba/ARouter

21、混淆  

 

libraries文件夹下有很多可以参考的类库的混淆代码

 

https://github.com/krschultz/android-proguard-snippets

 

22、超级好用的上拉加载下拉刷新

https://github.com/Aspsine/SwipeToLoadLayout

框架的相关文章链接及Demo

https://www.jianshu.com/p/fc8c73db72b3

https://github.com/maning0303/MNSwipeToLoadDemo

23、统一修改文字字体框架

https://github.com/chrisjenx/Calligraphy

 

24、屏幕适配

https://github.com/JessYanCoding/AndroidAutoSize

ps:还是比较建议用今日头条的适配框架吧,sw的适配方式在平板上会有问题

25、sharedPreference替代

https://github.com/Tencent/MMKV

26、code style 插件

https://www.jianshu.com/p/6f78b59caf2c

 

26、UI 相关工具库

UETool:https://github.com/eleme/UETool

  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用android studio 运行,下面是一个简单的文档,这个代码是一个demo 一、Activity的使用 1、SNActivity 框架最基本的activity,可调用$(SNManager)进行操作activity,具体用法请参考文档或代码 2、SNNavigationSlidingActivity 包含SNActivity的功能,继承于com.jeremyfeinstein.slidingmenu.lib.app.SlidingActivity 支持导航条和左滑视图的Activity 加载导航条: loadNavBar(int height,int background_color_id) loadNavBarResId(int height_id,int background_id) 加载左侧视图: /** * load left view * @param left_id left layout id * @param offset_value offset value * @param shadow_width_value shadow width value * @param shadow_drawable_id shadow drawable style * @param fade fade value */ loadLeft(int left_id, int offset_value, int shadow_width_value, int shadow_drawable_id, float fade) /** * load left view * @param left_id left layout id * @param offset_id offset id * @param shadow_width_id shadow width id * @param shadow_drawable_id shadow drawable id * @param fade fade value */ loadLeftResId(int left_id, int offset_id, int shadow_width_id, int shadow_drawable_id, float fade) 二、SNElement的使用 View的伪装对象,支持所有View的功能,详细功能可参考文档或代码 手动伪装:$.create $.id $.findView 注入伪装:$.setContent(view class or layout id,inject class); 获取原型:elem.toView(); 三、注入 1、视图注入 A、创建注入类,属性名称必须和layout中的id对应,如果不对应请加入标签@SNInjectView class DemoInject{ @SNInjectView(id=R.id.tvTest) public SNElement test; } B、实例化注入对象 DemoInject di=new DemoInject(); C、调用$.inject或者$.setContent注入 $.inject(di); D、注入成功后即可调用对象 String text=di.test.text(); 2、依赖注入 A、需要绑定注入对象,建议写到Application中的onCreate SNBindInjectManager.instance().bind(ITest.class, Test.class); B、与视图注入不同的是属性必须添加标签@SNIOC,注入的对象(Test)必须包含只有一个SNManager参数的构造函数,且必须实现注入者 public class Test implements ITest{ SNManager $; public Test(SNManager _$){ this.$=_$; }; } class DemoInject{ @SNIOC public ITest test; } C、调用$.inject或者$.setContent注入 同视图注入 D、注入成功后即可调用对象 di.test.xxx(); 四、fragment的使用 1、SNFragment 2、SNLazyFragment 五、控件的使用 1、SNFragmentScrollable 2、SNPercentLinearLayout、SNPercentRelativeLayout 3、SNScrollable 4、SNSlipNavigation 5、XList 6、slidingtab

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值