您的位置:首页 > 移动开发 > IOS开发

iOS彩票项目--第六天,运用MVC思想搭建设置界面(非storyboard方法)

2016-04-14 17:26 691 查看
一、我只想说封装的思想很重要,MVC的思想也很重要,利用MVC思想搭建一下的界面

#import "ChaosSettingViewController.h"
#import "ChaosHelpViewController.h"
#import "ChaosSettingGroup.h"

#import "ChaosPushViewController.h"
#import "ChaosHelpViewController.h"

#import "ChaosBlurView.h"
#import "MBProgressHUD+XMG.h"

@interface ChaosSettingViewController ()

@end

@implementation ChaosSettingViewController

- (instancetype)init
{
return [super initWithStyle:UITableViewStyleGrouped];
}

- (void)viewDidLoad {
[super viewDidLoad];

self.title = @"设置";
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"常见问题" style:UIBarButtonItemStyleBordered target:self action:@selector(help)];

[self setUpGroup0];
[self setUpGroup1];
[self setUpGroup2];
}

- (void)help
{
ChaosHelpViewController *helpVC = [[ChaosHelpViewController alloc] init];

helpVC.title = @"帮助";

[self.navigationController pushViewController:helpVC animated:YES];
}

- (void)setUpGroup0
{
ChaosSettingItemArrow *item = [ChaosSettingItemArrow itemWithImage:[UIImage imageNamed:@"RedeemCode"] title:@"使用兑换码"];
item.pushVCName = [UITableViewController class];
NSArray *items = @[item];
ChaosSettingGroup *group = [ChaosSettingGroup groupWithHeader:nil footer:nil items:items];
[self.sections addObject:group];
}
- (void)setUpGroup1
{
ChaosSettingItemArrow *item = [ChaosSettingItemArrow itemWithImage:[UIImage imageNamed:@"MorePush"] title:@"推送和提醒"];

item.pushVCName = [ChaosPushViewController class];

ChaosSettingItemSwitch *item1 = [ChaosSettingItemSwitch itemWithImage:[UIImage imageNamed:@"more_homeshake"] title:@"摇一摇机选"];
ChaosSettingItemSwitch *item2 = [ChaosSettingItemSwitch itemWithImage:[UIImage imageNamed:@"sound_Effect"] title:@"声音效果"];
ChaosSettingItemSwitch *item3 = [ChaosSettingItemSwitch itemWithImage:[UIImage imageNamed:@"More_LotteryRecommend"] title:@"采购小助手"];
NSArray *items = @[item,item1,item2,item3];
ChaosSettingGroup *group = [ChaosSettingGroup groupWithHeader:nil footer:nil items:items];
[self.sections addObject:group];
}
- (void)setUpGroup2
{
ChaosSettingItemArrow *item = [ChaosSettingItemArrow itemWithImage:[UIImage imageNamed:@"MoreUpdate"] title:@"检查新版本"];
item.itemOpertion = ^(NSIndexPath *indexPath){
// 高斯模糊框架的应用
ChaosBlurView *blurView = [[ChaosBlurView alloc] initWithFrame:ChaosScreenBounds];
[ChaosKeyWindow addSubview:blurView];

[MBProgressHUD showSuccess:@"没有新版本可更新"];

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[blurView removeFromSuperview];
});

};
ChaosSettingItemArrow *item1 = [ChaosSettingItemArrow itemWithImage:[UIImage imageNamed:@"MoreShare"] title:@"分享"];
ChaosSettingItemArrow *item2 = [ChaosSettingItemArrow itemWithImage:[UIImage imageNamed:@"MoreNetease"] title:@"产品推荐"];
ChaosSettingItemArrow *item3 = [ChaosSettingItemArrow itemWithImage:[UIImage imageNamed:@"MoreAbout"] title:@"关于"];
NSArray *items = @[item,item1,item2,item3];
ChaosSettingGroup *group = [ChaosSettingGroup groupWithHeader:nil footer:nil items:items];
[self.sections addObject:group];
}

@end


View Code

模型中的
/** itemblock */

@property(nonatomic,strong) void(^itemOpertion)(NSIndexPath *indexPath); 这个属性用来保存代码段。项目中是点击了相应的cell后需要做的事情保存到了block中

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: