文档章节

UITableView 抽取及控制器的调用整合

biyu6
 biyu6
发布于 2016/05/19 10:51
字数 335
阅读 10
收藏 0

#import "FatherView.h"

@interface AdminSafetyView : FatherView

@property (nonatomic, copy) void (^clickedAdminSafetyViewCell)(NSInteger index);

@end

================================================================================

 

#import "AdminSafetyView.h"

@interface AdminSafetyView ()<UITableViewDelegate,UITableViewDataSource>

@property (nonatomic, strong) UITableView * tableView;

@property (nonatomic, strong) UIView * topView;

@end

 

@implementation AdminSafetyView

 

- (instancetype)init{

    self = [super init];

    if (self) {

        [self initTopView];

        [self initTableView];

    }

    return self;

}

- (void)initTopView{

    _topView  = [[UIView alloc] init];

    _topView.backgroundColor = BACKGROUND_COLOR;

    [self addSubview:_topView];

    [_topView mas_makeConstraints:^(MASConstraintMaker *make) {

        make.top.equalTo(self.mas_top).offset(1);

        make.left.and.right.equalTo(self);

        make.height.equalTo(@19);

    }];

}

- (void)initTableView{

    _tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStylePlain];

    _tableView.backgroundColor = BACKGROUND_COLOR;

    _tableView.dataSource = self;

    _tableView.delegate = self;

    _tableView.scrollEnabled = NO;

    _tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;

    _tableView.separatorInset = UIEdgeInsetsMake(0, 20, 0, 0);

    _tableView.separatorColor =  boroerAndLineColor;

     [self addSubview:_tableView];

    WS(ws);

    [_tableView mas_makeConstraints:^(MASConstraintMaker *make) {

        make.top.equalTo(ws.mas_top).offset(20);

        make.left.and.right.bottom.equalTo(ws);

    }];

}

#pragma mark - 协议

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{

    return 1;

}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{

    return 2;

}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

       UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"ID"];

    if (!cell) {

              cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"ID"];

           }

      //自定义cell;

    if (indexPath.row == 0) {

        cell.textLabel.text = @"修改登录密码";

    }

    else {

        cell.textLabel.text = @"找回密码";

    }

    cell.textLabel.textColor = RGBAUIColorFrom(0x323232, 1.0);

    cell.textLabel.font = [UIFont systemFontOfSize:14];

    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

    cell.selectionStyle = UITableViewCellSelectionStyleNone;

       return cell;

    }

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{

    return 45.0f;

}

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

    self.clickedAdminSafetyViewCell(indexPath.row);

    }

- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{

    return 0.001f;

}

@end

================================================================================================

#import "AdminSafetyViewController.h"

#import "AdminSafetyView.h"

#import "ChangePWDViewController.h"

#import "BackPWDViewController.h"

 

@interface AdminSafetyViewController ()

 

@property (nonatomic,strong) AdminSafetyView *adminSafetyView;

 

@end

 

@implementation AdminSafetyViewController

 

- (void)viewDidLoad {

    [super viewDidLoad];

    [self initView];

    [self initClicked];

}

- (void)initView{

    [self initLeftItemWithName:nil orImage:@"btn_return"];

    [self.adminSafetyView setBackgroundColor:BACKGROUND_COLOR];

}

- (AdminSafetyView *)adminSafetyView{

    WS(ws);

    if (!_adminSafetyView) {

        _adminSafetyView = [[AdminSafetyView alloc]init];

        [self.view addSubview:_adminSafetyView];

        

        [_adminSafetyView mas_makeConstraints:^(MASConstraintMaker *make) {

            make.top.equalTo(ws.view).offset(65);

            make.left.right.bottom.equalTo(ws.view);

        }];

    }

    return _adminSafetyView;

}

- (void)initClicked{

    WS(ws);

    _adminSafetyView.clickedAdminSafetyViewCell = ^(NSInteger index)

    {

        switch (index) {

            case 0:{

                ChangePWDViewController * changeVC = [[ChangePWDViewController alloc] init];

                [ws.navigationController pushViewController:changeVC animated:YES];

            }

                break;

            case 1:{

                BackPWDViewController * backVC = [[BackPWDViewController alloc] init];

                [ws.navigationController pushViewController:backVC animated:YES];

            }

                break;

            default:

                break;

        }

    };

}

@end

 

 

© 著作权归作者所有

共有 人打赏支持
biyu6
粉丝 5
博文 30
码字总数 2657
作品 0
昌平
程序员
iOS 仿支付宝首页样式(二)

ok,上一次我给大家用一种方法实现了简单的支付宝首页样式。 上一篇文章:https://www.jianshu.com/p/658f2aeafa64 那篇文章里面方法有个一弊端,就是UITableView的高度和Cell的总高度一致,...

枫developer
08/23
0
0
UITableView的简单的使用

@interface TableListViewController : UITableViewController @end @implementation TableListViewController //表格可以以分段或者以单个列表的形式显示其数据。对于简单的表格,返回1,表...

宇宙执政
2013/04/08
0
0
iOS UITableView代理方法详解

iOS UITableView的代理方法详解 一、补充 在上一篇博客中,http://my.oschina.net/u/2340880/blog/404605,我将IOS中tableView(表视图)的一些常用方法总结了一下,这篇将tableView的代理方法...

珲少
2015/04/22
0
2
UITableView实用详解

一、UITableView1.数据展示的条件1> UITableView的所有数据都是由数据源(dataSource)提供的,所以要想在UITableView展示数据,必须设置UITableView的dataSource数据源对象2> 要想当UITable...

哥特复心
2014/01/05
0
0
UITableView 保存选中状态的方式

昨天看到UITableView中的属性 @property(nonatomic) BOOL allowsSelection;//是否允许选中cell,默认为YES@property(nonatomic) BOOL allowsMultipleSelection;//是否允许多个选中cell@proper......

Aimy
2013/11/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Android JNI开发系列(十三) JNI异常处理

JNI 异常处理 JNI异常与JAVA处理异常的区别 JAVA 有异常处理机制,而JNI没有 如果JAVA中异常没有捕获,后面的代码不会执行,JNI会执行 JAVA编译时的异常,是在方法显示的声明了某一个异常,编...

蔡小鹏
34分钟前
2
0
简单介绍Java 的JAR包、EAR包、WAR包区别

WAR包 WAR(Web Archive file)网络应用程序文件,是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。War专用于Web方面。大部分的JAVA WEB工程,都是打成WAR包进行发布的。 War是...

Linux就该这么学
59分钟前
1
0
Qt那些事0.0.7

在帮助文档(Overview - QML and C++ Integration)中随缘遇到一张图,是关于C++对象与QML整合介绍的,值得标记下来,虽然大部分功能也有所涉猎,但是还是留个记号,万一哪天我失忆了还想写Q...

Ev4n
今天
0
0
快速幂运算

题:求一个数 data 的 n 次幂,要求时间复杂度为log(n) 1:递归算法: /** * x^3=(x^2)*x;x^7=(x^3)^2 * x * * 递归算法 * @param data 底数 * @param n 次...

偶尔诗文
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部