用协议来统一接口
效果
源码
https://github.com/YouXianMing/ProtocolDesign
//
// CellHeightProtocol.h
// TableViewDemo
//
// Created by YouXianMing on 15/6/17.
// Copyright (c) 2015年 YouXianMing. All rights reserved.
//
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
/**
* 请用一个值来维护并存储cell的高度
*/
@protocol CellHeightProtocol <NSObject>
@required
/**
* cell最终高度
*
* @return 获取cell的最终高度
*/
- (CGFloat)cellHeight;
/**
* 计算高度
*/
- (void)calculateTheHeight;
@end
说明
1. 协议与代理并不相同.
2. 协议可以统一接口,我们可以通过让对象继承协议来统一接口输出,加上与抽象父类配合,可以最大限度的做到高类聚,低耦合,提升你的代码逼格.
3. 用协议可以隐藏实现细节.提升代码可读性.