ios-表视图-demo5-索引


#import "RootViewController.h"

@interface RootViewController ()

@end

@implementation RootViewController

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}

- (void)loadView
{
UIView *view = [[UIView alloc] initWithFrame:[UIScreen mainScreen].applicationFrame];
self.view = view;
[view release];

NSString *path = [[NSBundle mainBundle] pathForResource:@"ListData" ofType:@"plist"];
_dataDic = [[NSDictionary dictionaryWithContentsOfFile:path] retain];

NSArray *keyArray = [NSArray arrayWithArray:[_dataDic allKeys]];

// 排序
_keyArray = [[keyArray sortedArrayUsingSelector:@selector(compare:)] retain];

_tableView = [[UITableView alloc] initWithFrame:view.bounds style:UITableViewStylePlain];
_tableView.dataSource = self; // 设置数据源
_tableView.delegate = self; // 设置委托
[self.view addSubview:_tableView];
}

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

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

#pragma mark - TableView Datasource
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return [_keyArray count];
} // 表视图当中存在secion的个数,默认是1个

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;
{
NSArray *data = [_dataDic objectForKey:[_keyArray objectAtIndex:section]];
return [data count];
} // section 中包含row的数量

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// 定义一个静态标识符
static NSString *cellIdentifier = @"cell";
// 检查是否限制单元格
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
// 创建单元格
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier] autorelease];
}
// 给cell内容赋值

NSArray *data = [_dataDic objectForKey:[_keyArray objectAtIndex:indexPath.section]];
NSString *fontName = [data objectAtIndex:indexPath.row];
cell.textLabel.text = fontName;
cell.textLabel.font = [UIFont systemFontOfSize:18];

return cell;

} // 创建单元格

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
return _keyArray[section];
}

- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView
{
return _keyArray;
} // 返回索引的内容

- (NSInteger)tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title atIndex:(NSInteger)index
{
NSLog(@"index : %d title : %@", index, title);
return index;//根据数组是索引内容,根据下表来取得跳转区域,默认也是跳转到下表坐标
} // 选中时,跳转表视图

#pragma mark - UITableViewDelegate

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
return 60;
}

- (void)dealloc
{
[_tableView release];
_tableView = nil;
[super dealloc];
}

@end

ios-表视图-demo5-索引,布布扣,bubuko.com

时间: 2024-10-07 03:46:08

ios-表视图-demo5-索引的相关文章

iOS表视图常见问题

Q:表视图只需要部分单元格,怎样删除下方多余的空白单元格? A:代码如下 - (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { return [UIView new]; }

IOS之表视图添加索引

我们要实现的效果如下. 1.修改ControlView.h,即添加变量dict,用于存储TabelView的数据源. Cpp代码   #import <UIKit/UIKit.h> @interface IkrboyViewController5 : UIViewController{ NSMutableDictionary *dict; } @end #import <UIKit/UIKit.h> @interface IkrboyViewController5 : UIView

IOS开发之表视图添加索引

我们要实现的效果如下. 1.修改ControlView.h,即添加变量dict,用于存储TabelView的数据源. Cpp代码   #import <UIKit/UIKit.h> @interface IkrboyViewController5 : UIViewController{ NSMutableDictionary *dict; } @end #import <UIKit/UIKit.h> @interface IkrboyViewController5 : UIView

查看Oracle当前用户下的信息(用户,表视图,索引,表空间,同义词,存储过程函数,约束条件)

0.表空间 SQL>select username,default_tablespace from user_users; 查看当前用户的角色 SQL>select * from user_role_privs; 查看当前用户的系统权限和表级权限 SQL>select * from user_sys_privs; SQL>select * from user_tab_privs; 查看用户下所有的表 SQL>select * from user_tables; 1.用户 查看

第三章:IOS Table表视图委托协议和数据协议

表视图有两个重要的协议 UITableViewDataSource :数据源协议   方法 返回类型 说明 必须实现 tableView:cellForRowAtIndexPath: UITableViewCell* 为表视图单元格提供数据,该方法是必 须实现的方法 是 tableView:numberOfRowsInSection: NSInteger 返回某个节中的行数 是 tableView:titleForHeaderInSection: NSString 返回节头的标题 否 table

iOS企业级开发初级课程-表视图(13集)

首先了解了表视图的组成.表视图类的构成.表视图的分类以及表视图的两个重要协议(委托协议和数据源协议),对表视图有了一个整体上的认识.接下来我们掌握了如何实现简单表视图和分节表视图,以及表视图中索引.搜索栏.分组的使用.然后我们学习了如何对表视图单元格进行删除.插入.移动等操作.最后本章向大家介绍了表视图UI设计模式方面的内容. 序号 技术点 1 表视图-1-表视图介绍 2 表视图-2-简单表视图 3 表视图-3-简单表视图下 4 表视图-4-自定义单元格 5 表视图-5-搜索栏-1 6 表视图-

表视图控制器(TableViewController)(三) 、 表视图搜索

1 乐库的设置界面 1.1 问题 tableView分为静态(static)和动态(dynamic),之前使用的都是动态的tableView,表视图的有多少分区.有多少行以及每一行显示的内容都不是固定的,都由数据模式来决定.而静态的tableView有多少分区.有多少行以及每一行显示的内容都是固定不变的. 静态tableView应用广泛,常用于各种应用软件的设置界面,本案例使用静态tableView完成乐库的设置界面,如图-1所示: 图-1 1.2 方案 由图-1可以看到该界面的显示内容是固定不

IOS 集合视图指南1:介绍

About iOS Collection Views(关于IOS集合视图) A collection view is a way to present an ordered set of data items using a flexible and changeable layout. The most common use for collection views is to present items in a grid-like arrangement, but collection v

ios tableview的索引条将表视图往左边挤

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "PingFang SC"; color: #008400 } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px Menlo; color: #3e1e81 } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px Menlo; color: #008400 } span.s

IOS开发之表视图爱上CoreData

在接触到CoreData时,感觉就是苹果封装的一个ORM.CoreData负责在Model的实体和sqllite建立关联,数据模型的实体类就相当于Java中的JavaBean, 而CoreData的功能和JavaEE中的Hibernate的功能类似,最基本是两者都有通过对实体的操作来实现对数据库的CURD操作.CoreData中的上下文(managedObjectContext)就相当于Hibernate中的session对象, CoreData中的save操作就和Hibernate中的comm