Android一站式框架整合——Rui使用详细指南(基础篇)
Rui使用详细指南——基础版
基础效果:
GitHub地址 :Rui
视频地址 :
Rui谷歌Mvp+Dagger2版 (进阶版):Rui使用详细指南(进阶版)
内容包括:
1.基于Rui快速搭建自己的App只需下载后完成以下四步
2.发起网络请求/加载图片
3.动态权限处理
4.下拉刷新,上拉加载
5.webView交互
6.loading效果
7.沉侵式状态栏
8.Rxjava网络请求可能导致的内存泄漏的解决方案
以下是基础版使用,谷歌Mvp+Dagger2版请点上面链接。
基于Rui快速搭建自己的App只需下载后完成以下四步:
1 . 修改启动页
2 . 修改引导图
3 . 修改广告图背景
4 . 修改主页模块点击与未点击的图片与文字及颜色
1.修改启动页 : 点击style.xml , 修改android:windowBackgroud属性,设置成自己的图片资源。
2.修改引导图 :点击LauncherScrollActivity,修改引导页的图片。(数量自定)
3.修改广告也背景图 :点击AdvertisementActivity,进入xml文件,修改backgroud成自己的图片资源
4.修改主页模块点击与未点击的图片与文字及颜色 : 点击MainFragmentActivity,修改未选中字体颜色,与选中字体颜色。修改BottomTabBean,包括名字,选中图片,未选中图片。
BottomTabBean内容:分别是名字,未选中图片,选中图片
到此,自己的项目就已经可以跑起来了。
发起网络请求/加载图片
发起网络请求:请求百度首页(www.baidu.com),然后将返回吐司(toast)出来。点击NetTestActivity,请求地址为www.baidu.com,采用get方法,然后吐司返回结果。
加载图片 : 输入图片url地址,使用glide加载,设置到指定控件
动态权限处理 : 使用的第三方库是 PermissionsDispatcher。点击HeadImageActivity, 在组件上加上@RuntimePermission,然后在需要权限的方法上加上@NeedsPermission,然后在回调方法onRequestPermissionsResult中进行处理。
下拉刷新,上拉加载: 使用的第三方库是 SmartRefreshLayout。点击RecycleViewTestActivity,先调用initRecycleView()初始化RecyclerView,然后mSmartRefrshLayout.setOnRefreshLoadMoreListener(),设置下拉、上拉监听。然后看看adapter,使用的第三方库是 BaseRecyclerViewAdapterHelper,看下TestAdapter,只虚几行代码即可完成adapter中的内容。
webView交互 :点击WebViewActivity,在initData()当中注册了一个供web调用的方法,名字叫做submitFromWeb,并将字符串{data2Web}作为web调用原生之后的返回结果。在R.id.btn_callWeb的点击效果中,是原生调用web的方法。调用web的方法名字叫做functionInJs,传递了{username:123}作为参数,并将web返回的结果吐司出来。
我们再看一下first.html中注册了一个方法functionInJs也就是供原生调用的方法,并将字符串{dataTo原生}作为原生调用之后的返回。到此就实现了原生与web传参交互,并获取返回结果。
loading效果 : 选择第三方库AVLoadingIndicatorView,在RuiApp中进行枚举类(BallClipRotateIndicator)替换即可更换不同的loading效果。
沉侵式状态栏 :第三方库:StatusBarCompat,只需一样代码搞定。
Rxjava网络请求可能导致的内存泄漏的解决方案 :第三方库:RxLifeCycle。点击NetTestActivity,注意他继承自RxAppCompatActivity,然后在网络请求中解开compose注释代码既可,具体怎么实现的,可以看下RxLifeCycle的文档,这里不多做解释。在Rui第三版(谷歌Mvp + Dagger2)中已经取代了RxLifeCycle,封装的网络层更加简洁。
Android一站式框架整合——Rui使用详细指南(基础篇)相关推荐
- 极光小课堂 | 极光推送之 Android 客户端使用指南——基础篇
" 本文中涉及到的所有代码现已在 Github 上开源,地址:https://github.com/xuexiangjys/JPushSample" 01 前言 - 极光推送是国内 ...
- ClearCase指南-基础篇(连载一)
ClearCase指南-基础篇(连载一) 第1章 前言 . 本文档凡斜体字即代表高级内容.高级概念.或可选内容,仅作粗略了解用,暂不必深入理会. . 如下如无特别说明,缩写"CC& ...
- 函数闭包--JavaScript权威指南--基础篇4
函数JavaScript权威指南–基础篇4 一.知识点–函数–闭包 1.要理解函数闭包,要先知道几个概念: ①块级作用域和函数作用域的概念 FAQ:什么是块级作用域? 在类C语言中是这么定义的:变量的 ...
- STM32运行深度学习指南基础篇(3)(STM32CubeMX.AI+Tensorflow)
STM32运行深度学习指南基础篇(3)(STM32CubeMX.AI+Tensorflow) 在上一篇文章中我们已经有训练好的tflite模型,接下来我们要在Clion中实现,如果是Keil的朋友可以 ...
- Kubernetes入门指南-基础篇
Kubernetes入门指南-基础篇 基础入门 kubernetes简介 kubernetes是一个平台 kubernetes架构 kubernetes不是什么 核心组件 kubernetes基本概念 ...
- 转载 Spark性能优化指南——基础篇
前言 在大数据计算领域,Spark已经成为了越来越流行.越来越受欢迎的计算平台之一.Spark的功能涵盖了大数据领域的离线批处理.SQL类处理.流式/实时计算.机器学习.图计算等各种不同类型的计算操作 ...
- Spark性能优化指南——基础篇
在大数据计算领域,Spark已经成为了越来越流行.越来越受欢迎的计算平台之一.Spark的功能涵盖了大数据领域的离线批处理.SQL类处理.流式/实时计算.机器学习.图计算等各种不同类型的计算操作,应用 ...
- SSM三大框架整合Springfox(Swagger2)详细解决方案
由于项目中使用的是前后端分离,所以,频繁的需要进行数据的交互和接口的调用,所以需要api文档的使用,这样就更加的方便,于是就找到了swagger这个东东,还是很好用.下面介绍一下如何整合到spring ...
- 三大框架整合步骤(详细)
以是从struts2-------->>>hibernate--------------->>>>spring的整合过程. 环境:tomcat7+MyEcli ...
最新文章
- CentOS7 minimal 没有netstat命令
- python赋值字符串的切片_python基础知识之字符串
- C#中多线程同步的Monitor理解
- Code片段 : .properties属性文件操作工具类 JSON工具类
- 独家解读 etcd 3.4版本 |云原生生态周报 Vol. 18
- [云炬创业基础笔记]第四章测试19
- Tableau研学小课堂(part3)--Tableau数据可视化
- python拼接大量ts文件_Python爬取.ts文件,合并为mp4
- HTTP(2)----图文解析HTTP
- AgileJava开源项目正式开始
- Servlet面试题18道
- 【Java】NIO 仿照zookeeper 写的 nio客户端
- [数字图像处理]频域滤波(2)--高通滤波器,带阻滤波器与陷波滤波器
- discuz模板机制
- 信息流广告如何操作?一文搞懂!
- JAVA入门——lesson 7
- Daily record-November
- 为什么要阅读《首先,打破一切常规》
- 推荐一个博客工具——Boke宝贝
- 谷歌宣布Android设备累计激活量突破10亿台
热门文章
- telnet 正在连接127.0.0.1:8888...无法打开到主机的连接。 在端口 23: 连接失败
- 2016暑假实习项目之微信投票管理系统
- No module named _lzma
- 米筐开源量化框架 RQalpha 安装使用
- wm_concat函数用法
- 菜鸡的折腾路程,情人节啊顺便记录一下啦,立个flag
- 裁员纪实:联想不是我的家(转)
- 2013年1月16日 OutOfMemory.CN 进展
- 简单练习---学生课程信息
- 冰箱有哪些尺寸 冰箱尺寸的选择 冰箱尺寸大小标准对照表