zoukankan      html  css  js  c++  java
  • UIStoryboard

    UIStoryboard

     

    目录

    • 概述
    • Storyboard的创建
    • Storyboard中的页面跳转

    文件内跳转

    文件外跳转

    • Segues
    • 不同类型的视图控制器在UIStoryboard上的实现

     

    概述

    IOS编程对视图控制器处理常常分为xib和Storyboard,xib是比较古老的视图控制器管理形式,Storyboard则是比较新的,对于两者的异同,笔者暂时还不是很有体会,只是觉得Storyboard的话,可以让开发人员很快熟悉界面的跳转流程,但是缺点就是当如果Storyboard很大的时候,会发现可能只是改一小部分的东西,Xcode编译的时间依旧会很久,可能Xcode又要把整个Storyboard给编译一遍。

    优点

    通过使用storyboard,你可以有一个全局的概念

    和xib的对比

    有很多局限性,storyboard并不如Interface builder那么功能强大,有很多Interface Builder可以做的地方,storyboard并不能做

     

    Storyboard的创建

    直接新建一个Storyboard文件

     

    Storyboard中的页面跳转

    (1)Storyboard文件内UIViewController之间的跳转

    连线实现跳转

    直接连线,从一个UIButton到一个UIViewController

    获得跳转到的目标视图控制器的类以作初始化,在原视图控制器上重写以下方法

    -(void)prepareForSegue:(UIStoryboard *)segue sender:(id)sender{

    UIViewController *secondVC = segue.destinationViewController;

    }

    代码实现跳转+设置UIViewController之间的Segue

    [self performSegueWithIdentifier:@"segue_identifier" sender:self];

    注:segue_identifier为原视图控制器连线到跳转到的目标视图控制器之间的segue的Identifier,在检查器面板可进行设置

    使用技巧:通过设置和判断segue.identifier来区分跳转到的视图

    (2)Storyboard文件之间的跳转

    实现代码

    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"storyboard_name" bundle:nil];

    UIViewController *nextVC = [storyboard instantiateViewControllerWithIdentifier:@"viewcontroller_identifier"];

    注:viewcontroller_identifier为Storyboard里面中的视图控制器的Storyboard ID;storyboard_name为Storyboard除了文件后缀之后的文件名

     

    Segues

    Model

    Push

    自定义Segue——Custom

    自己编写动画,详见《IOS 5 by tutorials》

     

    不同类型的视图控制器在UIStoryboard上的实现

    UIViewController

    UITabBarController

    UINavigationController

    UITableViewController

    UITableViewCell

     

  • 相关阅读:
    python 的 类属性 与 实例属性
    python 的 append 和 extend
    机器学习的最佳入门学习资源
    各种排序算法探讨与实现
    C++基础:C++中vector使用简介
    C++基础:C++中的explicit关键字
    差分约束(poj 1201
    codeforeces 547C
    2015 7月 做题记录
    set&map
  • 原文地址:https://www.cnblogs.com/IOS-Developer/p/4117233.html
Copyright © 2011-2022 走看看