
我想给所有的controller都继承一个基类, 但是呢,我这个些controller 有的都已经继承了 UIViewController, 像这种情况怎么办? 用协议?
1 cxe2v 2015-05-12 16:46:00 +08:00 让你的基类继承UIViewController,controller再继承基类 |
2 googolxi 2015-05-12 16:56:29 +08:00 在代码中写一个BaseViewController,封装一些变量和方法进去,后边创建的控制器都继承BaseController,代码如下 #import "BaseViewController.h" @interface NewsDetailViewController : BaseViewController |
3 likid 2015-05-12 17:17:13 +08:00 replace all |
4 rayshen 2015-05-12 18:57:36 +08:00 via iPhone 多继承即一个子类可以有多个父类,它继承了多个父类的特性。 |
5 monsabre1 2015-05-12 19:09:32 +08:00 不提倡 这个是c++让人晕菜的原因之一 |
6 tsinghan OP |
7 monsabre1 2015-05-12 22:22:51 +08:00 objectivec 提倡 1.单一继承 2.组合 |
9 tsinghan OP |
13 vincentxue 2015-05-13 14:05:48 +08:00 我的工程一般有一个基类,两个子基类。 例如: @interface XXXBaseViewController : UIViewController @interface XXXBaseTableViewController : XXXBaseViewController <UITableViewDataSource, UITableViewDelegate> @interface BaseCollectionViewController : BaseViewController <UICollectionViewDataSource, UICollectionViewDelegate> 后面两个都是自己实现的,之所以不用系统的是因为我发现系统的如 UITableViewController 有时候会有问题,例如某些下拉刷新库用不了,约束不能改,反正很多限制,不如自己实现。 |
14 chengchao0311 2015-05-15 07:33:22 +08:00 runtime, class_addMethod, Method Swizzling. |
15 xi_lin 2015-05-20 23:19:57 +08:00 补一个category |