前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用UITableView 简化登录注册界面

使用UITableView 简化登录注册界面

作者头像
代码行者
发布2018-08-23 11:18:03
1K0
发布2018-08-23 11:18:03
举报
文章被收录于专栏:macOS 开发学习macOS 开发学习

感觉有些时间没写iOS的东西了,主要是大神们都已经把该讲的都讲清楚了,<code>实在不敢弄斧班门</code>前段时间看到一篇巧用状态值处理复杂的 TableView文章,思路另辟蹊径,值得学习,但通篇看下来后<code>发现没有code demo,有些撩人啊</code>,本着学习的态度,根据该文章的方法,写了个示例工程loginTableDemo,希望能对看了该文章的人在实践上有所帮助,同时欢迎大家指出代码中的不足,<code>没有优化处理,有不少冗余的code</code>. 不废话,先上效果:

demo

坑与细节
  • 原文中的<code>func transitionToViewState(newState: AuthViewState)</code>仅是方案,不能直接用的.具体的切换要自己实现.
  • 不同的内容,要分成不同的cell,然后用tableView根据状态来加载<code>这里也可以使用一个cell ,然后根据不同的枚举值,生成cell里的显示内容</code>,这两种方式各有利弊,我个人倾向使用不同的cell,简化枚举逻辑,但增加了cell种类,<code>大家按喜欢的来就好了</code>
  • 与直接使用<code>UIView + UITextField + UIButton</code>的界面对比,使用<code>tableView</code>的方案增加了数据传递的成本,cell中的<code>按钮点击事件</code>和<code>文字输入事件</code>与<code>controller</code>之间比较松散,我的示例中,使用了protocol的方式,有兴趣的可以换成闭包方式看看,<code>也许可以更精简一些.</code>
  • 整个界面UI非常朴素,就一个tableview,感觉逻辑也清晰,<code>并且天然的具有动画效果</code>,看起来还不错.
  • 项目中使用的SwiftLCS这个库处理集合很方便,也是项目的主要功臣,值得推荐.
  • <code>tableView</code>切换状态时,要先删除后添加,<code>同时要记得修改数据源的对应数据</code>
  • 项目使用<code>swift</code>实现,代码也简单,<code>相信使用Objective-C的同学</code>也可以看懂
  • 最后,项目中<code>Login文件夹(模块)</code>可以直接拖到其他项目中使用,只需修改一下UI就是你自己的了.<code>喜欢的就赞一个吧</code>
结束语

就像巧用状态值处理复杂的 TableView文章中最后提到一样,把UIKit想的深一点,会有更多的可能~<code>共勉,共勉</code>

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017.06.09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 坑与细节
  • 结束语
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档