iOS-UItableView 多组表格

新建一个模块(类),类似于javabean

//
//  HMStudent.h
//  表格控件
//
//  Created by YaguangZhu on 15/8/13.
//  Copyright (c) 2015年 YaguangZhu. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface HMStudent : NSObject
@property(nonatomic,copy)NSString *title;
@property(nonatomic,copy)NSString *desc;
@property(nonatomic,strong)NSArray *students;

@end
 //
//  ViewController.m
//  表格控件
//
//  Created by YaguangZhu on 15/8/13.
//  Copyright (c) 2015年 YaguangZhu. All rights reserved.
//

#import "ViewController.h"
#import "HMStudent.h"

@interface ViewController () <UITableViewDataSource>
@property (weak, nonatomic) IBOutlet UITableView *tableView;
@property(strong,nonatomic)NSArray *dataList;
@end

@implementation ViewController
- (NSArray *)dataList
{
    if(_dataList == nil)
    {

        HMStudent *stu1 =[[HMStudent alloc]init];
        stu1.title=@"黑马1气";
        stu1.desc=@"good";

        NSMutableArray *array1 = [NSMutableArray array];
        for (int i=0; i<10; i++) {
            [array1 addObject:[NSString stringWithFormat:@"%@ - - %04d",stu1.title,i]];
            stu1.students = array1;
        }

        HMStudent *stu2 =[[HMStudent alloc]init];
        stu2.title=@"黑马2气";
        stu2.desc=@"good";
        NSMutableArray *array2 = [NSMutableArray array];
        for (int i=0; i<10; i++) {
            [array2 addObject:[NSString stringWithFormat:@"%@ - - %04d",stu2.title,i]];
            stu2.students = array2;

            _dataList = @[stu1,stu2];
        }

    }
    return _dataList;
}

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return self.dataList.count;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    HMStudent *stu = self.dataList[section];
    return stu.students.count;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:nil];
    HMStudent *stu = self.dataList[indexPath.section];
    cell.textLabel.text=stu.students[indexPath.row];
    return cell;
}

//- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView;              // Default is 1 if not implemented

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
    HMStudent *stu = self.dataList[section];

    return stu.title;

}// fixed font style. use custom view (UILabel) if you want something different
- (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section
{
    HMStudent *stu = self.dataList[section];

    return stu.desc;
}

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end
时间: 2024-10-10 20:24:59

iOS-UItableView 多组表格的相关文章

iOS UITableView删除组中唯一行,即[UITableView _endCellAnimationsWithContext:] warning

在iOS项目中要删除某一行,此行是此组中最后一行,在使用 UITableView 的方法: self.tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: .None) 但未能成功,Warning:Assertion failure in -[UITableView _endCellAnimationsWithContext:], /SourceCache/UIKit_Sim/UIKit-2372/UITableView.

IOS UitableView 介绍

在众多移动应?用中,能看到各式各样的表格数据 , • 在iOS中,要实现表格数据展?示,最常?用的做法就是使?用UITableView • UITableView继承?自UIScrollView,因此?支持垂直滚动,?而且性能极佳 UITableView的两种样式,一种是只有一组别,还有一种是有多个数别如下图: 如何展?示数据 ? UITableView需要?一个数据源(dataSource)来显?示数据, UITableView会向数据源查询?一共有多少?行数据以及每?一?行显?示什么数据等

IOS UITableView Group&amp;Section

UItableView 根据数据结构不同 会有不同样式 关键在两个代理 tableviewdelegate&tabledatasourse 下面代码是我实施的Group 在模拟器中 ios6.1和ios7 并且滚动后相应的section会“置顶”,效果不错哦! 核心代码: #import <UIKit/UIKit.h> @interface AnnouncementViewController : UIViewController<UITableViewDataSource,UI

ios UITableView 相关

tableView 实现的方法 无分组的cell #pragma mark - Table view data source - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return self.contacts.count; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRow

ios UItableView,UITableViewHeaderFooterView分组头部的重用机制,简单地仿射变换CGAffineTransform

怎样设置包括第一栏在内相同高度的section(小技巧,虽然容易但容易忽略) *第一步,在viewdidload里将尾部设为0,table.sectionFooterHeight = 0;(代理方法)- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{ return 0; }虽然也可以设置尾部高度,但是设置后没有效果 第二步,调用tableView的代理方法- (CGF

IOS UITableView NSIndexPath属性讲解

IOS UITableView NSIndexPath属性讲解 查看UITableView的帮助文档我们会注意到UITableView有两个Delegate分别为:dataSource和delegate. dataSource 是UITableViewDataSource类型,主要为UITableView提 供显示用的数据(UITableViewCell),指定UITableViewCell支持的编辑操作类型(insert,delete和 reordering),并根据用户的操作进行相应的数据更

iOS——UITableView数据源的一些问题

UITableView数据源的问题"name=image_operate_1771416366029362alt="iOS UITableView数据源的问题"src="http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif"real_src="http://s15.sinaimg.cn/bmiddle/002WA StNzy6NJcgxGSafe&690">

IOS UItableView得group风格如何去掉分割线问题

在自定义UItableView的时候,当选择的style为Group时,往往在设置透明后分割线还在,为了去除,只要重新设置一个BackgroundView覆盖掉原来的即可 //取消分割线 UIView *view= [ [ [ UIView  alloc ] init ] autorelease]; [cell setBackgroundView :view]; //取消点击效果 cell.selectionStyle = UITableViewCellSelectionStyleNone; I

iOS UITableView划动删除的实现

标签:划动删除 iphone 滑动删除 ios UITableView 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://rainbird.blog.51cto.com/211214/634587 从七八月前对苹果一无所知,到现在手持iphone,ipad,itouch有三个线上成熟app并熟练开发ios应用.一路走来一直站在前辈的肩膀上不断进步.如今生活工作稳定是时候将一直以来的一些心得整理出来了.想来想去决定先说说UITab