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使用详细指南(基础篇)相关推荐

  1. 极光小课堂 | 极光推送之 Android 客户端使用指南——基础篇

    " 本文中涉及到的所有代码现已在 Github 上开源,地址:https://github.com/xuexiangjys/JPushSample" 01 前言 - 极光推送是国内 ...

  2. ClearCase指南-基础篇(连载一)

    ClearCase指南-基础篇(连载一) 第1章 前言    . 本文档凡斜体字即代表高级内容.高级概念.或可选内容,仅作粗略了解用,暂不必深入理会.   . 如下如无特别说明,缩写"CC& ...

  3. 函数闭包--JavaScript权威指南--基础篇4

    函数JavaScript权威指南–基础篇4 一.知识点–函数–闭包 1.要理解函数闭包,要先知道几个概念: ①块级作用域和函数作用域的概念 FAQ:什么是块级作用域? 在类C语言中是这么定义的:变量的 ...

  4. STM32运行深度学习指南基础篇(3)(STM32CubeMX.AI+Tensorflow)

    STM32运行深度学习指南基础篇(3)(STM32CubeMX.AI+Tensorflow) 在上一篇文章中我们已经有训练好的tflite模型,接下来我们要在Clion中实现,如果是Keil的朋友可以 ...

  5. Kubernetes入门指南-基础篇

    Kubernetes入门指南-基础篇 基础入门 kubernetes简介 kubernetes是一个平台 kubernetes架构 kubernetes不是什么 核心组件 kubernetes基本概念 ...

  6. 转载 Spark性能优化指南——基础篇

    前言 在大数据计算领域,Spark已经成为了越来越流行.越来越受欢迎的计算平台之一.Spark的功能涵盖了大数据领域的离线批处理.SQL类处理.流式/实时计算.机器学习.图计算等各种不同类型的计算操作 ...

  7. Spark性能优化指南——基础篇

    在大数据计算领域,Spark已经成为了越来越流行.越来越受欢迎的计算平台之一.Spark的功能涵盖了大数据领域的离线批处理.SQL类处理.流式/实时计算.机器学习.图计算等各种不同类型的计算操作,应用 ...

  8. SSM三大框架整合Springfox(Swagger2)详细解决方案

    由于项目中使用的是前后端分离,所以,频繁的需要进行数据的交互和接口的调用,所以需要api文档的使用,这样就更加的方便,于是就找到了swagger这个东东,还是很好用.下面介绍一下如何整合到spring ...

  9. 三大框架整合步骤(详细)

    以是从struts2-------->>>hibernate--------------->>>>spring的整合过程. 环境:tomcat7+MyEcli ...

最新文章

  1. CentOS7 minimal 没有netstat命令
  2. python赋值字符串的切片_python基础知识之字符串
  3. C#中多线程同步的Monitor理解
  4. Code片段 : .properties属性文件操作工具类 JSON工具类
  5. 独家解读 etcd 3.4版本 |云原生生态周报 Vol. 18
  6. [云炬创业基础笔记]第四章测试19
  7. Tableau研学小课堂(part3)--Tableau数据可视化
  8. python拼接大量ts文件_Python爬取.ts文件,合并为mp4
  9. HTTP(2)----图文解析HTTP
  10. AgileJava开源项目正式开始
  11. Servlet面试题18道
  12. 【Java】NIO 仿照zookeeper 写的 nio客户端
  13. [数字图像处理]频域滤波(2)--高通滤波器,带阻滤波器与陷波滤波器
  14. discuz模板机制
  15. 信息流广告如何操作?一文搞懂!
  16. JAVA入门——lesson 7
  17. Daily record-November
  18. 为什么要阅读《首先,打破一切常规》
  19. 推荐一个博客工具——Boke宝贝
  20. 谷歌宣布Android设备累计激活量突破10亿台

热门文章

  1. telnet 正在连接127.0.0.1:8888...无法打开到主机的连接。 在端口 23: 连接失败
  2. 2016暑假实习项目之微信投票管理系统
  3. No module named _lzma
  4. 米筐开源量化框架 RQalpha 安装使用
  5. wm_concat函数用法
  6. 菜鸡的折腾路程,情人节啊顺便记录一下啦,立个flag
  7. 裁员纪实:联想不是我的家(转)
  8. 2013年1月16日 OutOfMemory.CN 进展
  9. 简单练习---学生课程信息
  10. 冰箱有哪些尺寸 冰箱尺寸的选择 冰箱尺寸大小标准对照表