美文网首页iOS学习开发IOSiOS开发技术分享
尝试用UITableView的创建模式生成新视图

尝试用UITableView的创建模式生成新视图

作者: 萧旭 | 来源:发表于2016-12-23 20:03 被阅读66次
我也有一个小小的想法

       一直都有个想法:想着去尝试一下苹果API中的一些代码的写法或者说是实现方法,比如:(这个想法最早)给按钮添加一个点击方法(有过尝试,但还是没有实现,如果,看到的你知道点什么的话, 劳烦点拨一下,先行告谢),(然后就是我今天要说的这个)用UITableView的datasource和delegate的这种方式来实现视图内容的布置。

       开发中总是会自定义很多的视图,某些视图其实可以分成很多个小的部件,我在这里称这为基础视图,比如:一个有多个标题的导航菜单,其实可以看作是由很多个只展示菜单信息的基础视图组成,并且这些基础视图往往是相类似的。

我之前的做法

       先前是用最平常的方法创建视图,然后给这个视图开放一个公有属性(一般是NSArray类型的),然后实现这个公有属性的set方法,在这个set方法中来完成这些基础视图的创建。这个方法百试不爽。天空飘来五个字,爽爽爽爽爽!

那么问题来了

       但偶然的一天,产品经理(这个让技术进步功不可没人)冒出来,说:你来给我做做这个。然后问题就来了。。。我现在的菜单不仅仅要文字,再给我来一组图片吧!按照之前的方法,我应该再来一个属性,再来一遍set方法,由于要使用Masonry来定位置,并且标题和文字的位置有关系,所以两个set方法中都得根据这两个属性来创建一遍视图,这样会平白无故多创建很多视图。所以不爽!!
无意间想尝试尝试tableView中的datasource那种方法(不时来一次新的尝试让自己爽爽)。

牛刀小试

       代码在这里哟 https://github.com/SmallRookieJian/XJShareDemos
       其实,声名代理这些都没什么,再尝试的时候被卡了一下的是,我这些代理要在那里用呢?找了半天找了一个方法,大家都用它!

- (void)willMoveToSuperview:(UIView *)newSuperview; 

Instance Method

willMoveToSuperview:

Tells the view that its superview is about to change to the specified superview.

       方法大意:当本视图的父视图改变时会主动调用,包括从无到有

意外收获

       这里还想到UIViewController的 viewWillAppearviewDidAppear这一类方法的调用方式,我可以在willMoveToSuperview方法才开始的时候(也就是各种视图都还没有创建的时候)调用viewWillAppear,然后在willMoveToSuperview方法结束时(也就是各种视图都已经创建结束后)调用 viewDidAppear。

尾语

       用这种方法才实现这种功能时,真的是莫名的兴奋,想着要分享分享,但这怎么越写越虚??其实并没有什么内容!

大家加油,自己加油!保持写东西分享!
为了尝试技术而做东西的人!
用文字描述想法

相关文章

  • 尝试用UITableView的创建模式生成新视图

    我也有一个小小的想法 一直都有个想法:想着去尝试一下苹果API中的一些代码的写法或者说是实现方法,比如:(这个想法...

  • UITableView

    UITableView 继承自UIScrollview有滚动视图的特性1.创建一个UITableView的对象2....

  • DDL 数据库视图定义

    创建视图 根据表的查询结果创建视图 创建简单视图,由一张表的查询生成的视图 创建复杂视图,由多张表的查询或有函数时...

  • UITableView多选状态下的一些问题

    UITableView 多选 创建一个 UITableView 进入多选模式,调用 TableView 的 set...

  • Django创建模板

    MTV M models 模型,创建模型类,生成迁移文件,执行迁移 V view 视图, 创建视图,编写视图处理函...

  • 视图

    视图虚拟表,和普通表一样使用Mysql5.1的新特性,通过普通表动态生成的数据 一、创建视图create view...

  • 1.7 为你的视图添加 路由模式

    为你的视图创建模板 你已经为你的 blog 应用程序创建了 视图 和 url 模式。 url 模式 把 url 映...

  • 知识点总结

    一、 UITableView有哪些优化方式 使用不透明视图(不透明的视图可以极大地提高渲染的速度) 不要重复创建不...

  • iOS创建简单表视图UITableView

    记录一个菜鸟的iOS学习之旅,如能帮助正在学习的你,亦枫不胜荣幸;如路过的大神如指教几句,亦枫感激涕淋! 在iOS...

  • 设计模式(四)建造者模式

    1、概述 生成器模式是一种创建型设计模式, 使你能够分步骤创建复杂对象。 该模式允许你使用相同的创建代码生成不同类...

网友评论

    本文标题:尝试用UITableView的创建模式生成新视图

    本文链接:https://www.haomeiwen.com/subject/aovcmttx.html