iOS学习笔记-097.彩票12——设置1_数据模型创建

彩票12——设置1_数据模型创建

一、图示

这里写图片描述

这里写图片描述


二、QWMSettingItem 基类创建

根据上面的图示,我们可以发现有好几种数据模型,一种是右边是箭头的,一种是右边是开关控件的,还有的是子标题的。

不管哪种,它们都有一些共同的属性,比如:左边的图片,标题,子标题,点击的时候处理事情。

根据这些,我们创建基类 QWMSettingItem

2.1 QWMSettingItem.h

//
//  QWMSettingItem.h
//  03_UIView79_彩票
//
//  Created by 杞文明 on 17/8/30.
//  Copyright © 2017年 杞文明. All rights reserved.
// 行模型

#import <Foundation/Foundation.h>

@interface QWMSettingItem : NSObject
/**图片*/
@property(nonatomic,strong)UIImage *icon;

/**标题*/
@property(nonatomic,copy)NSString *title;

/**子标题*/
@property(nonatomic,copy)NSString *subTitle;

/**点击行的时候要干的事情*/
@property(nonatomic,copy) void(^operationBlock)(NSIndexPath *indexPath);

+ (instancetype)itemWithTitle:(NSString *)title;

+ (instancetype)itemWithIcon:(UIImage *)icon title:(NSString *)title;

@end

2.2 QWMSettingItem.m

//
//  QWMSettingItem.m
//  03_UIView79_彩票
//
//  Created by 杞文明 on 17/8/30.
//  Copyright © 2017年 杞文明. All rights reserved.
//

#import "QWMSettingItem.h"

@implementation QWMSettingItem

+ (instancetype)itemWithTitle:(NSString *)title{
    return [self itemWithIcon:nil title:title];
}

+ (instancetype)itemWithIcon:(UIImage *)icon title:(NSString *)title{
    QWMSettingItem *item = [[self alloc]init];
    item.icon = icon;
    item.title = title;
    return item;
}

@end

三、QWMSettingArrowItem 右边是箭头的模型

//  QWMSettingArrowItem.h
//  03_UIView79_彩票
//
//  Created by 杞文明 on 17/8/30.
//  Copyright © 2017年 杞文明. All rights reserved.
// 右箭头的item

#import "QWMSettingItem.h"

@interface QWMSettingArrowItem : QWMSettingItem
/**目标控制器  这种item是要打开界面的*/
@property(nonatomic,assign)Class desVc;
@end

四、QWMSettingSwitchItem 右边是开关的模型

//
//  QWMSettingSwitchItem.m
//  03_UIView79_彩票
//
//  Created by 杞文明 on 17/8/30.
//  Copyright © 2017年 杞文明. All rights reserved.
//

#import "QWMSettingSwitchItem.h"

@implementation QWMSettingSwitchItem

@end

五、QWMSettingGroup 组模型

我们刚刚创建的行模型,那么我们有多个组,需要创建组模型,有头、尾标题,与行集合数据。

5.1 QWMSettingGroup.h

//
//  QWMSettingGroup.h
//  03_UIView79_彩票
//
//  Created by 杞文明 on 17/8/30.
//  Copyright © 2017年 杞文明. All rights reserved.
// 组的模型

#import <Foundation/Foundation.h>

@interface QWMSettingGroup : NSObject
/** 头部标题 */
@property (nonatomic, copy) NSString *headerTitle;

/** 尾部标题 */
@property (nonatomic, copy) NSString *footTitle;

/** 行模型数组 */
@property (nonatomic, strong) NSArray *items;

+ (instancetype)gruopWithItems:(NSArray *)items;

@end

5.2 QWMSettingGroup.m

//
//  QWMSettingGroup.m
//  03_UIView79_彩票
//
//  Created by 杞文明 on 17/8/30.
//  Copyright © 2017年 杞文明. All rights reserved.
//

#import "QWMSettingGroup.h"

@implementation QWMSettingGroup

+(instancetype)gruopWithItems:(NSArray *)items{
    QWMSettingGroup *group = [[self alloc]init];
    group.items = items;
    return group;
}

@end
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值