UIPickView 国旗选择demo

作者: Dayu大鱼 | 来源:发表于2016-06-28 12:50 被阅读131次
国旗选择demo

用到MVC模式

Model : CZF l a g
View :CZFlagView ------ 通过 x i b 快速创建一个view
Controller : 逻辑处理 ( pickView和flag "国旗数据" 之间 )

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

CZFlagView.h
#import <UIKit/UIKit.h>

@class CZFlag;
@interface CZFlagView : UIView

// 提供给外界一个快速创建flagView的方法
+ (instancetype)flagView;

+ (CGFloat)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之间行高
+ (CGFloat)rowHeight {
    
    return 80;
}

**重写数据模型的set方法:因为要对floaView 的xib文件内部属性赋值**
- (void)setFlag:(CZFlag *)flag {

    _flag = flag;
    
    赋值
    self.nameLbl.text = flag.name;
    self.iconView.image = [UIImage imageNamed:flag.icon];
    
    
}

@end

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

思路参考图:

pickView国旗demo.png

相关文章

网友评论

    本文标题:UIPickView 国旗选择demo

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