iOS开发笔记 - Rxswift + RxDatasources快速创建列表

我请讲解下,iOS开发笔记 - Rxswift + RxDatasources快速创建列表
最新回答
百年二货

2024-09-17 03:11:42

从我的个人经验来看,前端开发的最佳学习路径是:安卓原生 ===> 网页(h5、css、js、vue、react)===> ReactNative ===> iOS原生 ===> 大前端。

为什么说安卓原生最适合作为入门呢?因为它并不简单,而且用Java编写最好。在编写安卓原生应用时,尤其是使用Java而不是Kotlin,经常会遇到NullPointer空指针异常。这时,你需要去debug、寻找异常发生的原因,这个过程能锻炼你的逻辑能力和语言理解能力。安卓上的UI组件非常适合入门,如按钮、列表、文本、文本输入框等基础组件,学会用法后,里面的概念就可以让你迅速掌握其他组件,例如网页、RN中的按钮、列表等。因为这些UI概念都是通用的,连样式概念都是通用的,如圆角、阴影等。其次,网页的学习、React框架的学习能够让你更快地掌握ReactNative,我就是过来人。最后,是iOS原生开发。现在学习iOS会涉及一个问题,那就是Swift已经出到第5版了,我们是否还需要学习Objective-C,这个问题从Swift刚出来到现在,一直有人在问。我认为,应该两门语言都学。学习一门语言不需要太多时间。我学习Objective-C只用了3天,学习Swift则用了1个星期。当掌握了这两门语言后,你会发现,无论是用Objective-C还是Swift编写UI,其本质是一样的,只是语言的写法不同而已。当然,iOS的学习比安卓要难一点,它的概念相比安卓要多且复杂一点。但是,太简单的东西学习起来又有什么意义呢?

第一步:创建tableView实例对象、注册Cell,然后添加到父视图上。

第二步:创建数据流,可以使用以下两个方法快速从数组创建出一个Observable流。

这里数据对象必须是SectionModel类型,也可以自定义结构体,然后扩展该结构体遵从SectionModelType协议。

SectionModel示例

自定义结构体示例

第三步:创建DataSource,共有两个DataSource类型:RxTableViewSectionedReloadDataSource和RxTableViewSectionedAnimatedDataSource。

创建实例对象时需要传入数据类型,也就是上面定义的结构类型。

例如:

这里需要传入一个closure函数用来配置cell

示例

最后一步:将数据流和datasource绑定