美文网首页
视图切换

视图切换

作者: 三思的简书 | 来源:发表于2019-06-05 11:53 被阅读0次

     1 视图切换

    第一种 模态化的方式切换转场

    modalTransitionStyle的类型是UIModalTransitionStylePartialCurl时反相传值第一个视图添加它,第二个视图在TouchBegan…方法中dissmiss时TextField被点击时会直接返回到第一个视图,TextField无法编辑

    modalPresentationStyle

    需要将实例化后视图控制器设置成导航控制器的根视图控制器,然后再进行切换,

    NextUIViewController *vc =[[NextUIViewController alloc]init];

    UINavigationController *navVC =[[UINavigationController alloc]initWithRootViewController:vc];

    [self presentViewController:navVC animated:YES completion:NULL];

    if([self.delegate respondsToSelector:@selector(reverseSendValue:)]){

    //        [self.delegate reverseSendValue:tf.text];

            [self.delegate performSelector:NSSelectorFromString(@"reverseSendValue:")withObject:tf.text];

        }

    2 种转场:

    UINavigationController, navigationBar / toolBar  , UIBarButtonItem

    每个视图控制器都有自己的navigationitem属性,每个视图控制器的navigationitem是不同的,通过它可以设置navigationbar的返回按钮、左右视图、titleView等属性

    高度44, tabbar高度49

    //设置返回按钮,在下个界面体现

        self.navigationItem.backBarButtonItem = backItem;

    pushViewController:  animated:

    popToViewController:self.navigationController.viewControllers[0]

    3 直接切换视图

    通过UIView的window属性获得UIWindow对象

    重新指定UIWindow对象的rootViewController属性

    4 通过管理子视图的方式切换视图

      用一个视图控制器做容器,将其他的视图控制器加入到容器视图控制器中,再将第一个要呈现的视图控制器的视图贴到容器视图控制器上([self.view addSubiew:self.childViewControllers[0]])。当需要进行视图切换的时候,可以调用容器视图控制器的transitionFromViewController:toViewController:duration:options:animations:completion方法;如果要从容器视图控制器中移除当前视图控制器可以调用removeFromParentViewController方法。

    5.视图控制器的旋转

    可以在项目的通用设置(General)选项中设置"Device Orientation"勾选允许设备旋转的方向,如下图所示;也可以在info.plist文件设置"Supported interface orientations"键,可以使用的值包括:Portrait(bottom home button)、Landscape(left home button)、Landscape(right home button)、Portrait(top home button)

    6 自定义切换效果

    https://www.cnblogs.com/zanglitao/p/4167909.html

    https://www.jianshu.com/p/ad492060b741

    相关文章

      网友评论

          本文标题:视图切换

          本文链接:https://www.haomeiwen.com/subject/nomjxctx.html