zoukankan      html  css  js  c++  java
  • iOS基础-UIKit框架-多控制器管理-Modal


    Modal效果

    一、Modal演示(代码)
    1.事前准备
    1>新建一个空项目,删除默认控制器文件
    2>自定义2个控制器,将ViewController的Class分别设置为这个类
    3>创建一个window,将其根控制器设置为第一个自定义的控制器
    2.拖一个按钮,监听这个按钮并实现方法(用来跳转到第二个界面)

    -(IBAction)jump
    {
    //展示第二个控制器界面 MJTwoController *two = [[MJTwoViewController alloc] init]; [self presentViewController:two animated:YES completion:^{ //可以在展示完毕时做一些事情 }]; }

    3.在第二个控制器View上拖一个按钮,监听这个按钮并实现方法(用来回到第一个界面)

    -(IBAction)cancel
    { [self dismissViewControllerAnimated:YES completion:
    ^{ //可以在展示完毕时做一些事情 }]; }

    4.过程:当点击跳转到第二个控制器View并完全显示View时,第一个View会被移开(没有被销毁)。同理,当点击取消时,会先将第一个View放回去,然后慢慢移开第二个View,当完全显示第一个View时,第二个控制器及其View会被销毁。

    5.改进:Modal导航控制器
    1>给一个控制器添加一个导航栏最快的方法就是给它套一层导航控制器

    -(IBAction)jump
    {
    //展示第二个控制器界面 MJTwoController *two = [[MJTwoViewController alloc] init]; UINavigationController *nav = [[UINavigationController alloc]
    initWithRootViewController:two];
    [self presentViewController:two animated:YES completion:^{ //可以在展示完毕时做一些事情 }]; }

    2>在viewDidLoad中初始化一个Item,用来取消(回到第一个View),并实现方法即可。

    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] 
    initWithTitle:@“取消” style:UIBarButtonItemStyleDone target:self action:@selector(cancel)]; 

    二、Modal演示(storyboard)---连线选Modal即可,取消需要通过代码

  • 相关阅读:
    用JavaScript+CSS实现Mootools竖排动画菜单
    如何对html:select下拉列表里的数据进行排序
    Work with Unicode, CCSID & DBCS
    学习笔记之搜索引擎—原理、技术与系统
    C#中如何创建文件夹
    学习笔记之Effective C++ 2nd Edition
    Global variables vs. Host variables vs. Parameter markers
    【ZZ】cin、cin.get()、cin.getline()、getline()、gets()等函数的用法
    freopen C/C++文件输入输出利器
    [ZZ]用Eclipse开发C/C++程序的图形化配置
  • 原文地址:https://www.cnblogs.com/marshall-yin/p/4742573.html
Copyright © 2011-2022 走看看