iOS基础-UIKit框架-多控制器管理-实例:qq界面框架

一、事前准备
1.删除默认控制器文件,删除storyboard默认的控制器
2.拖一个TabBarController,将连接的2个控制器删掉。
3.拖4个导航控制器,将连接的控制器删掉.
4.将这4个导航控制器按顺序连为TabBarController的子控制器
5.拖一个TableView,设置为第一个导航控制器的根控制器,其他同理。

6.注意动态这个界面的TableView的Content设为Static Cells,Style设为Grouped
7.动态界面的Cell的Style设置为Basic
8.点击动态界面的TableView,Sections设置为3(会自动拷贝之前的cell)

二、功能实现
1.功能实现:点击添加按钮后进入的添加界面,TabBar则隐藏起来。
点击添加界面的View,勾上Hide BottomBar On Push

整体框架

2.功能实现:点击分组或者全部会处理相应事件
1>新建一个联系人的控制器文件,继承自TableView Controller,并修改为对应Class(系统自带的控制器是无法拖线的,要想监听,必须用自定义控制器)
2.监听这个分组/全部的SegmentedControl控件并实现方法

//在这个方法中处理相应事件即可。
-(IBAction)titleChange:(UISegmentedControl *)sender{

}

3.细节处理
问题:当自定义一个关于QQ的控制器,然后将Class设置为它时,关于QQ图片下面的Cell不见了。
原因:因为用的是静态单元格,不需要通过代码来告诉它们长什么样子
但是,你自定义的这个控制器继承自UITableViewController,只要你继承自UITableViewController,Xcode就会帮你实现代理方法。而且都return 0.所以才不见的。
解决方法:将Xcode帮你自动实现的代理方法删除掉即可。

原文地址:https://www.cnblogs.com/marshall-yin/p/4741930.html