view 这部分应该是这个demo中比较难理解的

国旗选择demo

用到MVC模式

Model : CZF l a gView :CZFlagView —— 通过 x i b
快速创建一个viewController : 逻辑处理 ( pickView和flag “国旗数据” 之间 )

view 这部分应该是这个demo中比较难理解的:

CZFlagView.h#import <UIKit/UIKit.h>@class CZFlag;@interface CZFlagView : UIView// 提供给外界一个快速创建flagView的方法+ (instancetype)flagView;+ rowHeight;//拿到数据@property (nonatomic, strong) CZFlag *flag;@end

CZFlagView.m#import "CZFlagView.h"#import "CZFlag.h"@interface CZFlagView ()名称@property (nonatomic, weak) IBOutlet UILabel *nameLbl;国旗图片框@property (nonatomic, weak) IBOutlet UIImageView *iconView;@end@implementation CZFlagView通过这个方法可以快速创建一个flagView+ (instancetype)flagView { return [[[NSBundle mainBundle] loadNibNamed:@"CZFlagView" owner:nil options:nil] firstObject];}设置view之间行高+ rowHeight { return 80;}**重写数据模型的set方法:因为要对floaView 的xib文件内部属性赋值**- setFlag:flag { _flag = flag; 赋值 self.nameLbl.text = flag.name; self.iconView.image = [UIImage imageNamed:flag.icon]; }@end

viewControlelr.m中逻辑处理的代码 雷同于菜谱 省市选择demo 这里就不写了

思路参考图:

图片 1pickView国旗demo.png

相关文章