三、一个使用 Observable 的 MVVM 样例 1,效果图 (1)当我们在表格上方的搜索框中输入文字时,会实时地去请求 GitHub 接口查询相匹配的资源库。 (2)数据返回后,将查询结果数量显示在导航栏标题上,同时把匹配度最高的资源条目显示显示在表格中......
RxSwift 结合 MVVM 简直太合适不过了,或者说 RxSwift 就是为 MVVM 而生。在演示 MVVM 架构样例之前,我先简单地介绍下 MVVM 的一些基本概念,并与传统的 MVC 架构做个比较。 一、MVC 架构 1,基本介绍 (1)MVC 是 Model-View-Controller 的缩写。它主要有如下三层结构......
前面介绍的 MBProgressHUD 是使用 Objective-C 编写的,接下来我再介绍另一个 Swift 版本的 HUD 库:SwiftNotice。 一、SwiftNotice 1,基本介绍 (1)SwiftNotice 是一个使用纯 Swift 写的 HUD 库,该库提供多种类型的弹出窗口。 (2)同时 SwiftNotice 可完美适配各种滚动视图......
JSONPlaceholder 是一个提供免费的在线 REST API 的网站,我们在开发时可以使用它提供的 url 地址测试下网络请求以及请求参数。或者当我们程序需要获取一些假数据、假图片时也可以使用它。 其返回的数据为 JSON 格式,且同时支持 HTTP 和 HTTPS 这两种请求类型......
六、扩展 MBProgressHUD,封装常用方法 通常情况下,提示信息无非就这几种类型:操作成功的提示、失败的提示、普通消息提示、等待提示。我们可以对 MBProgressHUD 做一个扩展,把这 4 种类型提示的方法封装起来,方便使用。 1,扩展 MBProgressHUD 这里我们对 MBProgressHUD 类进行扩展......
四、修改默认样式 1,设置遮罩的背景色 下面将提示框遮罩设置为黑色半透明(默认为透明的) //初始化HUD窗口,并置于当前的View当中显示 let hud = MBProgressHUD.showAdded......
在程序开发中,我们常常会根据不同情况显示一些透明指示层(HUD 窗口),比如:操作执行完毕后的提示框,请求数据时的 loading 视图等等。我们当然可以自己实现这些 HUD 窗口,但最方便的还是直接使用一些比较成熟的第三方库。首先要介绍的是一个名为 MBProgressHUD 的第三方 HUD 库......
三、将结果转为 JSON 对象 1,实现方法 (1)如果服务器返回的数据是 json 格式的话,直接通过 Moya 提供的 mapJSON 方法即可将其转成 JSON 对象。 注意:关于 DouBanProvider 里的具体内容,可以参考上文 (2)或者使用下面这种写法也是可以的......
当我们进行页面跳转时,可能会通过 url 传递参数。比如下图我传了两个参数: 而目标页面如果想要通过 js 获取到这些参数值,原理无非就是将当前 url 地址进行截取并返回需要的部分......
Moya 是一个基于 Alamofire 的更高层网络请求封装抽象层。它可以对我们项目中的所有请求进行集中管理,方便开发与维护。同时 Moya 自身也提供了对 RxSwift 的扩展,通过与 RxSwift 的结合,能让 Moya 变得更加强大。下面我就通过样例演示如何使用“RxSwift + Moya”这个组合进行开发......