zoukankan      html  css  js  c++  java
  • pushViewController addSubview presentModalViewController视图切换

    1.pushViewController和popViewController来进行视图切换,首先要确保根视图是NavigationController,不然是不可以用的,

       pushViewController是进入到下一个视图,popViewController是返回到上一视图。

       UINavigationController是导航控制器,如果pushViewController的话,会跳转到下一个ViewController,点返回会回到现在这个ViewController;

    2.addSubView,需要注意的是,这个方法只是把页面加在当前页面。

       如果是addSubview的话,其实还是对当前的ViewController操作,只是在当前视图上面又“盖”住了一层视图,其实原来的画面在下面呢,看不到而已。

      (当然,也可以用insertSubView atIndex那个方法设置放置的层次)。

    3.没有NavigationController导航栏的话,使用self.presentViewController和self.dismissModalViewController。

       其中切换方法如下:

       – presentViewController:animated:completion: 弹出,出现一个新视图 可以带动画效果,完成后可以做相应的执行函数经常为nil
       – dismissViewControllerAnimated:completion:退出一个新视图 可以带动画效果,完成后可以做相应的执行函数经常为nil

       切换动画在压入一个新视图和弹出顶层视图均可以使用,下面只以压入视图为例。

       presentModalViewController:animated:completion:使用系统自带四种动画

       简单的实现方式:

       [page2Controller setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];

       [self presentModalViewController:myNextViewController animated:YES  completion:nil];

       系统支持的四种动画:

    typedef enum {

    UIModalTransitionStyleCoverVertical=0, //默认方式,竖向上推

    UIModalTransitionStyleFlipHorizontal, //水平反转

    UIModalTransitionStyleCrossDissolve,//隐出隐现

    UIModalTransitionStylePartialCurl,//部分翻页效果

    } UIModalTransitionStyle;

    presentModalViewController:animated:completion: 不用自带的四种动画效果    

    实现全翻页效果:

         CATransition *animation = [CATransition animation];

    animation.duration = 1.0;

    animation.timingFunction = UIViewAnimationCurveEaseInOut;

    animation.type = @"pageCurl";

    //animation.type = kCATransitionPush;

    animation.subtype = kCATransitionFromLeft;

    [self.view.window.layer addAnimation:animation forKey:nil];

    [self presentModalViewController:myNextViewController animated:NO completion:nil]; 

      

  • 相关阅读:
    python学习笔记之九:模块和包
    python学习笔记之八:迭代器和生成器
    python学习笔记之七:魔法方法,属性
    python学习笔记之六:更加抽象
    python学习笔记之五:抽象
    python学习笔记之四:条件,循环和其他语句
    python学习笔记之三:字典,当索引不好用时
    python学习笔记之二:使用字符串
    yolo自己的数据集中LabelImg的安装出现No module named 'libs.resources'错误
    django2 rest_framework + vue.js + mysql5.6 实现增删改查
  • 原文地址:https://www.cnblogs.com/cy568searchx/p/4961442.html
Copyright © 2011-2022 走看看