//
// ZZSettingArrowItem.h
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import "ZZSettingItem.h"
@class ZZSettingArrowItem;
typedefvoid (^ZZSettingArrowItemReadyForDestVc)(id item,id destVc);
@interface ZZSettingArrowItem :ZZSettingItem
@property (nonatomic,assign) Class destVcClass;
@property (nonatomic,copy)ZZSettingArrowItemReadyForDestVc readyForDestVc;
+ (instancetype)itemWithIcon:(NSString *)icon title:(NSString *)title destVcClass:(Class)destVcClass;
+ (instancetype)itemWithTitle:(NSString *)title destVcClass:(Class)destVcClass;
@end
//
// ZZSettingArrowItem.m
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import "ZZSettingArrowItem.h"
@implementation ZZSettingArrowItem
+ (instancetype)itemWithIcon:(NSString *)icon title:(NSString *)title destVcClass:(Class)destVcClass
{
ZZSettingArrowItem *item = [selfitemWithIcon:icontitle:title];
item.destVcClass = destVcClass;
return item;
}
+ (instancetype)itemWithTitle:(NSString *)title destVcClass:(Class)destVcClass
{
return [selfitemWithIcon:niltitle:titledestVcClass:destVcClass];
}
@end
//
// ZZSettingCheckItem.h
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import "ZZSettingItem.h"
@interface ZZSettingCheckItem :ZZSettingItem
@property (nonatomic,assign,getter = isChecked)BOOL checked;
@end
//
// ZZSettingCheckItem.m
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import "ZZSettingCheckItem.h"
@implementation ZZSettingCheckItem
@end
//
// ZZSettingItem.h
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import <Foundation/Foundation.h>
typedefvoid (^ZZSettingItemOption)();
@interface ZZSettingItem :NSObject
@property (nonatomic,copy)NSString *title;
@property (nonatomic,copy)NSString *subtitle;
@property (nonatomic,copy)NSString *icon;
@property (nonatomic,copy)ZZSettingItemOption option;
@property (nonatomic,copy)NSString *badgeValue;
+ (instancetype)itemWithIcon:(NSString *)icon title:(NSString *)title;
+ (instancetype)itemWithTitle:(NSString *)title;
+ (instancetype)item;
@end
//
// ZZSettingItem.m
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import "ZZSettingItem.h"
@implementation ZZSettingItem
+ (instancetype)itemWithIcon:(NSString *)icon title:(NSString *)title
{
ZZSettingItem *item = [selfitem];
item.icon = icon;
item.title = title;
return item;
}
+ (instancetype)itemWithTitle:(NSString *)title
{
return [selfitemWithIcon:niltitle:title];
}
+ (instancetype)item
{
return [[selfalloc]init];
}
@end
//
// ZZSettingLabelItem.h
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import "ZZSettingValueItem.h"
@interface ZZSettingLabelItem :ZZSettingValueItem
@property (nonatomic,copy)NSString *text;
@property (nonatomic,copy)NSString *defaultText;
@end
//
// ZZSettingLabelItem.m
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import "ZZSettingLabelItem.h"
@implementation ZZSettingLabelItem
- (NSString *)text
{
id value = [ZZUserDefaultsobjectForKey:self.key];
if (value ==nil) {
returnself.defaultText;
}else {
return value;
}
}
- (void)setText:(NSString *)text
{
[ZZUserDefaultssetObject:textforKey:self.key];
[ZZUserDefaultssynchronize];
}
@end
//
// ZZSettingSwitchItem.h
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import "ZZSettingValueItem.h"
@interface ZZSettingSwitchItem :ZZSettingValueItem
@property (nonatomic,assign,getter = isOn)BOOL on;
@property (nonatomic,assign,getter = isDefaultOn)BOOL defaultOn;
@end
//
// ZZSettingSwitchItem.m
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import "ZZSettingSwitchItem.h"
@implementation ZZSettingSwitchItem
- (id)init
{
if (self = [superinit]) {
self.defaultOn =YES;
}
return self;
}
- (BOOL)isOn
{
id value = [ZZUserDefaultsobjectForKey:self.key];
if (value ==nil) {
returnself.isDefaultOn;
}else {
return [valueboolValue];
}
}
- (void)setOn:(BOOL)on
{
[ZZUserDefaultssetBool:onforKey:self.key];
[ZZUserDefaultssynchronize];
}
@end
//
// ZZSettingValueItem.h
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import "ZZSettingArrowItem.h"
@interface ZZSettingValueItem :ZZSettingArrowItem
@property (nonatomic,copy)NSString *key;
@end
//
// ZZSettingValueItem.m
// ZZ_APP主流框架
//
// Created by ZZ_Macpro on 15/10/9.
// Copyright (c) 2015年 ZZ_Macpro. All rights reserved.
//
#import "ZZSettingValueItem.h"
@implementation ZZSettingValueItem
- (NSString *)key
{
return_key ?_key :self.title;
}
@end