//
// ViewController.m
// TableViewController
//
// Created by 王妍 on 16/3/23.
// Copyright © 2016年 com.edong. All rights reserved.
// #import "ViewController.h"
#import "MyTableViewCell.h"
#import "MyXIBTableViewCell.h"
@interface ViewController ()<UITableViewDataSource,UITableViewDelegate>
@property(nonatomic,strong)UITableView *tableView;
@end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad]; //1.创建tableView
[self creatTableViewController]; //3.注册cell
// [self.tableView registerClass:[MyTableViewCell class] forCellReuseIdentifier:@"cell"];
//3.1 Xib 注册的cell
[self.tableView registerNib:[UINib nibWithNibName:@"MyXIBTableViewCell" bundle:nil] forCellReuseIdentifier:@"cell_xib"];
} -(void)creatTableViewController
{
self.tableView = [[UITableView alloc] initWithFrame:[UIScreen mainScreen].bounds];
[self.view addSubview:self.tableView]; //2.设置代理 及实现代理方法
self.tableView.delegate = self;
self.tableView.dataSource = self; //3.tableView的属性 /*
UITableViewCellSeparatorStyleNone, 没有cell直接的那条线了
UITableViewCellSeparatorStyleSingleLine, 先在中间 但是短一点
UITableViewCellSeparatorStyleSingleLineEtched
*/
self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine; //分割线的颜色
self.tableView.separatorColor = [UIColor redColor];
//分割线的内边距(只能设置左右距离) 上 左 下 右 (设置上下没有用)
// self.tableView.separatorInset = UIEdgeInsetsMake(110, 200, 0, 50); //行高 (但是用代理方法设置的话 这个就不管用了)
self.tableView.rowHeight = 200;
}
#pragma mark----tableView的代理方法
//一个组有几行
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;
{
return 3;
}
//一共几个组
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 5;
// return [self.dataArray[section] count];
}
//cell的重用池
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{ // MyTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell" forIndexPath:indexPath];
MyXIBTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell_xib" forIndexPath:indexPath]; //给cell赋值
// cell.headImv.image = [UIImage imageNamed:@"1111.png"];
// cell.nameLable.text = @"aa"; return cell;
}
//头高度
-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
return 50;
}
//尾高度
-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
{
return 100;
} //头部试图
//-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
//{
// UIView *headView = [[UIView alloc] init];
// headView.frame = CGRectMake(0, 0, 0, 0);
// headView.backgroundColor = [UIColor redColor];
// return headView;
//} //尾部试图
//-(UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section
//{
// UIView *footView = [[UIView alloc] init];
// footView.frame = CGRectMake(0, 0, 0, 0);
// footView.backgroundColor = [UIColor yellowColor];
// return footView;
//} //cell的高度
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
return 80; //不同cell的高度
// return [MyTableViewCell cellHeight];
}
//点击cell的方法
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{ } //分区头标题
-(NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
return [NSString stringWithFormat:@"第%ld个头标题",section];
} //分区尾标题
-(NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section
{
return [NSString stringWithFormat:@"第%ld个尾标题",section];
} //索引
-(NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView
{
return @[@"a",@"b",@"c"];
}
//指定哪些行可以被编辑
-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{
if (indexPath.row % 2 == 0) {
return YES;
}else{
return NO;
}
} - (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
} @end
//一些tableView的 属性

//旁边的滚动条没有了
self.tableView.showsVerticalScrollIndicator = NO; //分割线的颜色

self.tableView.separatorColor = [UIColor redColor];

去掉cell的点击效果

  cell.selectionStyle = 0;

tableView的总结的更多相关文章

  1. iOS有关横向TableView的东西

    之前看到Apple store里面有横向的tableview,当然也有可能是collectionview啦. 尤其是项目中只有一条那么需要横向滑动的东西,就没有必要使用庞大的collectionvie ...

  2. tableView显示第一个cell有偏移问题

    - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { return 0 ...

  3. [tableView reloadData] 和 runloop

    需要[tableView reloadData]后需要立即获取tableview的cell.高度,或者需要滚动tableview,那么,直接在reloadData后执行代码是会有问题的. 断点调试感觉 ...

  4. 【代码笔记】iOS-一个tableView,两个section

    一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...

  5. 【Swift】Alamofile网络请求数据更新TableView的坑

    写这篇BLOG前,有些话不得不提一下,就仅当发发恼骚吧... 今天下午为了一个Alamofire取得数据而更新TableView的问题,查了一下午的百度(360也是见鬼的一样),竟然没有一个简单明了的 ...

  6. TableView 滑动收起键盘

    self.tableView.keyboardDismissMode = UIScrollViewKeyboardDismissModeOnDrag; 拖拽tableView就会收起键盘

  7. 关于TableView上有一段留白的解决方法

    当cell的类型是plaint类型时 直接设置self.automaticallyAdjustsScrollViewInsets=NO; 还有要注意检查你自己设置的frame是否正确     当cel ...

  8. iOS监听tableView组头切换事件

    - (void)tableView:(UITableView *)tableView willDisplayHeaderView:(UIView *)view forSection:(NSIntege ...

  9. 【原】iOS学习之tableView的常见BUG

    1.TableView头视图不随视图移动,头视图出现错位 错误原因:tableView的 UITableViewStyle 没有明确的声明 解决方法:在tableView声明的时候明确为 UITabl ...

  10. 两种让tableview返回顶部的方法

    1. [self.tableView selectRowAtIndexPath:[NSIndexPath indexPathForRow:_currentRow inSection:0] animat ...

随机推荐

  1. The Elements of Statistical Learning第3章导读

    1. 公式(3.4)的推导. 可以直接对公式(3.3)中的$\beta_0$求导就得到$\hat{\beta}_0=\bar{y}-\beta_1\bar{x}$. 对公式(3.3)中的$\beta_ ...

  2. YUM更换源(1)--yum找不到安装包

    公司提供的CentOS VM中,/etc/yum.repos.d 下 只有一个build.repo,其中提供的yum 源只有公司内部的几个源,很多包在这些源中都找不到.于是要添加别的源,下面的帖子中介 ...

  3. Java 抽象类和接口与多态

    引入抽象类和接口的原因 即"针对接口编程",关键就在多态,即向上转型 当变量的的声明类型是超类型时,即抽象类或者接口,这样,只要是具体实现此超类型的类所产生的对象,都可以指定给这个 ...

  4. Linux 下如何安装 JDK ,以 Ubuntu 为例。

    http://www.cnblogs.com/memory4young/p/ubuntu-install-jdk.html 一.下载 首先,当然是要下载了. 地址:http://www.oracle. ...

  5. 大数据全栈式开发语言 – Python

    前段时间,ThoughtWorks在深圳举办一次社区活动上,有一个演讲主题叫做“Fullstack JavaScript”,是关于用JavaScript进行前端.服务器端,甚至数据库(MongoDB) ...

  6. Bagging和Boosting 概念及区别

    Bagging和Boosting都是将已有的分类或回归算法通过一定方式组合起来,形成一个性能更加强大的分类器,更准确的说这是一种分类算法的组装方法.即将弱分类器组装成强分类器的方法. 首先介绍Boot ...

  7. IOS 微信

    原文:http://blog.csdn.net/ysy441088327/article/details/8441608 按照常例,列一些网址先: 微信开放平台首页: http://open.weix ...

  8. JS 响应式编程

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <script ...

  9. Strut、Spring、Hibernate如何实现资源整合(SSH)呢?

    Strut.Spring.Hibernate如何实现资源整合(SSH)呢? 其实很简单,我们从Spring与Hibernate的整合中可以看出来,由Spring的配置文件来管理Hiberbate的配置 ...

  10. 【BZOJ1552】[Cerc2007]robotic sort Splay

    [BZOJ1552][Cerc2007]robotic sort Description Input 输入共两行,第一行为一个整数N,N表示物品的个数,1<=N<=100000.第二行为N ...