小编在深圳的一家专注于教育软件的企业工作,原来考试模块是加载的web,但是考虑到性能流畅度,近期改成原生,花了一些时间去写了一下这个demo,只是因为公司忙于其他事情,就一直没发出来,刚好有一点时间稍微整理一下发出来,与大家分享一下。如果在使用过程中遇到什么问题请留言我;如果能够对你有一点点的帮助,请点个star,谢谢
整体结构是很基础的collectionview + tableview,小编曾尝试过scrollview + tableview的方式,因为题量比较大,感觉不是太合理
对答题的结果保存至本地
定时器使用的是GCD 封装工具(如果你使用nstimer的话,请记得加入runloop占位模式,否则在UI处理模式中定时不能同时执行),很简单的几个方法如下图
- 宏定义标识一些状态,如下图
- 对于只能切换至下一题的情况,小编采用的是将collectionview处理成单向滑动,实现原理 :1.禁止collectionViw滑动->2.添加滑动手势,根据手势的方法解决单向滑动的问题
- 填空题算是个难点吧,比较麻烦,在yykit的基础上进行的处理
- 具体代码我就不copy了,demo写的很详细,注释也比较多,也没有什么太深的封装,有兴趣欢迎你来一起讨论