文档章节

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开发tips-神奇的UITableView

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jianxin160/article/details/71436920 概述 UITableView是iOS开发中使用频率最高的UI控件,在前面的文章中对于...

KenshinCui
2017/05/08
0
0
iOS开发系列--UITableView全面解析

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jianxin160/article/details/47753205 --UIKit之UITableView 概述 在iOS开发中UITableView可以说是使用最广泛...

KenshinCui
2015/08/18
0
0
关于UITableViewCell和UITableView之间的消息传递

问题:当UITableViewCell中发生点击事件(或者其他事件)时,它是如何通知UITableView然后调用UITableView的delegate呢? 详细描述:UITableViewCell中没有属性可以设置它所在的UITableView...

罗包子
2015/04/13
311
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

没有更多内容

加载失败,请刷新页面

加载更多

linux脚本中父shell与子shell 执行的几种方式

本文主要介绍以下几个命令的区别: shell subshell source $ (commond) `commond` Linux执行Scripts有两种方式,主要区别在于是否建立subshell 1. source filename or . filename 不创建sub...

问题终结者
16分钟前
1
0
安装jdk和Tomcat

12月12日任务 16.1 Tomcat介绍 16.2 安装jdk 16.3 安装Tomcat Tomcat介绍 Tomcat是apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由apache、Sun和其他一些...

robertt15
17分钟前
3
0
Beetl 免费视频

来自 https://my.oschina.net/gking?q=Beetl ,Beetl终于有人录制视频了 项目git地址:https://gitee.com/gavink/beetl-blog 视频地址:下载下来会更清晰,视频比较长,可使用倍速看 百度网盘...

闲大赋
29分钟前
0
0
isEmpty和null的区别

isEmpty和null的区别: 1.一个是对象为空(IsNull),一个是值为空(IsEmpty) 2.IsNull指任务类型变量是否为空包括对象类型的变量。 IsNull函数: 功能:返回Boolean的值,指明表达是否不包...

DemonsI
55分钟前
3
0
Centos7 安装mysql与php

https://blog.csdn.net/qq_36431213/article/details/79576025 官网下载安装mysql-server 依次使用下面三个命令安装 wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.r......

Yao--靠自己
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部