UITableView表视图和导航控制器的交互使用
2、然后就是设置表视图, 首先要设置一个用来存储下一级视图控制器的数组
@property (copy, nonatomic)NSArray *conteollers;
3、下面两个比较重要的方法实现
//配置每个单元格
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
//获取当前行应对应的视图控制器
LCSecondLevelViewController *controller = self.conteollers[indexPath.row];
//设置本行显示的内容
cell.textLabel.text = controller.title;
cell.imageView.image = controller.rowImage;
return cell;
}
//当选中某一行后的响应
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
//获取所选行所对应的视图控制器
LCSecondLevelViewController *controller = self.conteollers[indexPath.row];
//把将要转换的视图控制器压入栈顶
[self.navigationController pushViewController:controller animated:YES];
}
由于内容太多,不宜全把代码写上,下面会附上我的代码地址
其实核心也就是上面这两个方法。
现在要实现这么一个功能,
在一个导航控制器中的根视图是一个表视图UITableView,然后点击这个表视图中的某行时,会跳转到另一个相应的视图中。
2、然后就是设置表视图, 首先要设置一个用来存储下一级视图控制器的数组
@property (copy, nonatomic)NSArray *conteollers;
3、下面两个比较重要的方法实现
//配置每个单元格
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
//获取当前行应对应的视图控制器
LCSecondLevelViewController *controller = self.conteollers[indexPath.row];
//设置本行显示的内容
cell.textLabel.text = controller.title;
cell.imageView.image = controller.rowImage;
return cell;
}
//当选中某一行后的响应
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
//获取所选行所对应的视图控制器
LCSecondLevelViewController *controller = self.conteollers[indexPath.row];
//把将要转换的视图控制器压入栈顶
[self.navigationController pushViewController:controller animated:YES];
}
由于内容太多,不宜全把代码写上,下面会附上我的代码地址
其实核心也就是上面这两个方法。
至此设置完成后,点击某一行后就会跳转到与该行相对应的视图控制器所控制的视图了
代码:http://pan.baidu.com/s/1tLCcs
写给自己,如有错误欢迎指正,共同学习 。——LC