zoukankan      html  css  js  c++  java
  • 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帮你自动实现的代理方法删除掉即可。

  • 相关阅读:
    【Mysql 8001错误
    【mysql查询今天、昨天、7天、近30天、本月、上一月 数据】
    bootstrap-table 常用总结-1
    前端下载图片
    swiper 轮播中常用的效果,持续更新
    常用的时间函数整理
    拼接字符转的转义
    Ajax跨域请求,设置content
    JS MD5 返回二进制格式
    jqgrid three 树形结构
  • 原文地址:https://www.cnblogs.com/marshall-yin/p/4741930.html
Copyright © 2011-2022 走看看