以莫泰的形式进行页面转换(传值用block)

1.在第一个页面进入第二个页面可以使用莫泰的方式

在第一个页面包含第二个页面的头文件#import "FirstViewController.h"
#import "ViewController.h",上面的红色是要进入的第二个界面,黑色是本界面
2.在第一个界面的某个按键响应中写下边代码
    //准备切换界面
   ViewController *mydic = [[ViewController alloc]init];
    mydic.degree = 5;
    
    //设定动画样式
    mydic.modalTransitionStyle =UIModalTransitionStyleCoverVertical;
    
    
    mydic.block = ^(int isblue)   //实现block
    {

NSLog(@"%d",isblue);
        
        
    };

[self presentViewController:mydic animated:YES completion:^{
    }];

//这就是要以莫泰的形式进入第二个页面了

///////////////////////////////////////////////////////////////////////////////////////////////

第二个文件的头文件中需要声明block:

@property (nonatomic,copy) void (^block)(int isblue);//声明

@property (nonatomic,assign) int degree;

还定义一个属性,以便让第一个界面调用,mydic.degree就是第一个页面给第二个页面的属性设置值,

在第二个界面中在某个按钮响应方法中写:

//以莫泰形式进入的  必须自己关闭自己  动画模式是前面设的
    [self dismissViewControllerAnimated:YES completion:^{
    }];
    self.block(10);    //调用block

self.block(10);这话是让10传给上一个界面,//以莫泰形式进入的  必须自己关闭自己  动画模式是前面设的

以上的蓝色部分用到的是block回调。

上一篇:本人为巨杉数据库(开源NoSQL)写的C#驱动,支持Linq,全部开源,已提交github


下一篇:python之 模块与包