// // LMJBaseSettingViewController.m // NetLottery // // Created by apple on 16/6/23. // Copyright © 2016年 163. All rights reserved. // #import "LMJStaticTableViewController.h" #import "LMJSettingCell.h" const UIEdgeInsets tableViewDefaultSeparatorInset = {0, 15, 0, 0}; const UIEdgeInsets tableViewDefaultLayoutMargins = {8, 8, 8, 8}; @interface LMJStaticTableViewController () @end @implementation LMJStaticTableViewController - (void)viewDidLoad { [super viewDidLoad]; NSLog(@"self.tableView.separatorInset = %@, self.tableView.separatorInset = %@", NSStringFromUIEdgeInsets(self.tableView.separatorInset), NSStringFromUIEdgeInsets(self.tableView.layoutMargins)); // self.tableView.separatorInset = UIEdgeInsetsZero; // self.tableView.layoutMargins = UIEdgeInsetsZero; } - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return self.sections.count; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return self.sections[section].items.count; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { LMJWordItem *item = self.sections[indexPath.section].items[indexPath.row]; LMJSettingCell *cell = [LMJSettingCell cellWithTableView:tableView andCellStyle:UITableViewCellStyleValue1]; cell.item = item; return cell; } - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { [tableView deselectRowAtIndexPath:indexPath animated:YES]; LMJWordItem *item = self.sections[indexPath.section].items[indexPath.row]; // 普通的cell if(item.itemOperation) { item.itemOperation(indexPath); return; } // 带箭头的cell if([item isKindOfClass:[LMJWordArrowItem class]]) { LMJWordArrowItem *arrowItem = (LMJWordArrowItem *)item; if(arrowItem.destVc) { UIViewController *vc = [[arrowItem.destVc alloc] init]; if ([vc isKindOfClass:[UIViewController class]]) { vc.navigationItem.title = arrowItem.title; [self.navigationController pushViewController:vc animated:YES]; } } } } - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section { return self.sections[section].headerTitle; } - (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section { return self.sections[section].footerTitle; } - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { return self.sections[indexPath.section].items[indexPath.row].cellHeight; } - (NSMutableArray *)sections { if(_sections == nil) { _sections = [NSMutableArray array]; } return _sections; } - (LMJStaticTableViewController *(^)(LMJWordItem *))addItem { TWWeak(self); if (!self.sections.firstObject) { [self.sections addObject:[LMJItemSection sectionWithItems:@[] andHeaderTitle:nil footerTitle:nil]]; } return ^(LMJWordItem *item) { [weakself.sections.firstObject.items addObject:item]; return weakself; }; } - (instancetype)init { return [super initWithStyle:UITableViewStyleGrouped]; } @end