自定义Cell模型组Group封装(自定义Cell2⃣️)

来源:互联网 发布:现货白银行情分析软件 编辑:程序博客网 时间:2024/05/22 20:29

//

//  ZZSettingGroup.h

//  ZZ_APP主流框架

//

//  Created by ZZ_Macpro on 15/10/9.

//  Copyright (c) 2015 ZZ_Macpro. All rights reserved.

//


#import <Foundation/Foundation.h>


@interface ZZSettingGroup :NSObject

@property (nonatomic,copy)NSString *header;

@property (nonatomic,copy)NSString *footer;

@property (nonatomic,strong)NSArray *items;



+ (instancetype)group;

@end


//

//  ZZSettingGroup.m

//  ZZ_APP主流框架

//

//  Created by ZZ_Macpro on 15/10/9.

//  Copyright (c) 2015 ZZ_Macpro. All rights reserved.

//


#import "ZZSettingGroup.h"


@implementation ZZSettingGroup


+ (instancetype)group

{

   return [[selfalloc]init];

}

@end


//

//  ZZSettingCheckGroup.h

//  ZZ_APP主流框架

//

//  Created by ZZ_Macpro on 15/10/9.

//  Copyright (c) 2015 ZZ_Macpro. All rights reserved.

//


#import "ZZSettingGroup.h"

@class ZZSettingCheckItem,ZZSettingLabelItem;

@interface ZZSettingCheckGroup :ZZSettingGroup

/**

 *  选中的索引

 */

@property (nonatomic,assign)NSInteger checkedIndex;


/**

 *  选中的item

 */

@property (nonatomic,strong)ZZSettingCheckItem *checkedItem;


/**

 *  来源于哪个item

 */

@property (nonatomic,strong)ZZSettingLabelItem *sourceItem;

@end


//

//  ZZSettingCheckGroup.m

//  ZZ_APP主流框架

//

//  Created by ZZ_Macpro on 15/10/9.

//  Copyright (c) 2015 ZZ_Macpro. All rights reserved.

//


#import "ZZSettingCheckGroup.h"

#import "ZZSettingCheckItem.h"

#import "ZZSettingLabelItem.h"


@implementation ZZSettingCheckGroup


- (ZZSettingCheckItem *)checkedItem

{

   for (ZZSettingCheckItem *iteminself.items) {

       if (item.isChecked)return item;

    }

    return nil;

}


- (void)setCheckedItem:(ZZSettingCheckItem *)checkedItem

{

   for (ZZSettingCheckItem *iteminself.items) {

        item.checked = (item == checkedItem);

    }

   self.sourceItem.text = checkedItem.title;

}


- (NSInteger)checkedIndex

{

   for (int i =0; i <self.items.count; i++) {

       ZZSettingCheckItem *item =self.items[i];

       if (item.isChecked)return i;

    }

   return -1;

}


- (void)setCheckedIndex:(NSInteger)checkedIndex

{

   if (checkedIndex <0 || checkedIndex >= self.items.count)return;


   self.checkedItem =self.items[checkedIndex];

}


- (void)setItems:(NSArray *)items

{

    [supersetItems:items];

    

    self.sourcrItem =self.sourceItem;

}


- (void)setSourcrItem:(ZZSettingLabelItem *)sourceItem

{

   _sourceItem = sourceItem;

    

   for (ZZSettingCheckItem *iteminself.items) {

        item.checked = [item.titleisEqualToString:sourceItem.text];

    }

}

@end




0 0