iOS中详解Block作为property属性实现页面之间传值

 更新时间:2018年02月12日 08:51:44   投稿:laozhang  
这篇文章主要介绍了iOS中Block作为property属性实现页面之间传值的相关知识点,以及代码分享,一起学习下吧。

我们可以把Block当做Objective-C的匿名函数。Block允许开发者在两个对象之间将任意的语句当做数据进行传递,往往这要比引用定义在别处的函数直观。另外,block的实现具有封闭性(closure),而又能够很容易获取上下文的相关状态信息。定义Block变量,就相当于定义了一个函数。但是区别也很明显,因为函数肯定是在-viewDidLoad方法外面定义,而Block变量定义在了viewDidLoad方法内部。当然,我们也可以把Block定义在-viewDidLoad方法外部,例如上面的代码块printNumBlock的定义,就在-viewDidLoad外面。

第二个viewcontroller控制第一个button的title

跳转的时候,button的selector()

- (void)SecondVc{ 
 
  SecondViewController *svc = [[SecondViewController alloc] init]; 
  // Block 传值 
  svc.secondBlock = ^(){ 
    NSLog(@"First->Second"); 
    [self.button setTitle:@"23" forState:UIControlStateNormal]; 
  }; 
  [self.navigationController pushViewController:svc animated:YES]; 
   
} 

第二个viewcontroller.h的声明:

typedef void (^SecondController)(); 
@interface SecondViewController : UIViewController 
/** block */ 
@property (nonatomic, copy) SecondController secondBlock; 
@end

第二个viewcontroller.m的touchesBegan方法:

- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{ 
  NSLog(@"second view controller"); 
  if (_secondBlock) { 
    _secondBlock(); 
  } 
} 

相关文章

  • iOS动画-定时对UIView进行翻转和抖动的方法

    iOS动画-定时对UIView进行翻转和抖动的方法

    下面小编就为大家带来一篇iOS动画-定时对UIView进行翻转和抖动的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • IOS 开发之 NSMutableArray与NSArray 的区别

    IOS 开发之 NSMutableArray与NSArray 的区别

    这篇文章主要介绍了IOS 开发之 NSMutableArray与NSArray 的区别的相关资料,希望通过本文能掌握这部分内容,需要的朋友可以参考下
    2017-09-09
  • ios7中UIViewControllerBasedStatusBarAppearance作用详解

    ios7中UIViewControllerBasedStatusBarAppearance作用详解

    这篇文章主要介绍了 ios7中UIViewControllerBasedStatusBarAppearance作用详解的相关资料,需要的朋友可以参考下
    2016-11-11
  • 去除IOS苹果手机自带按钮样式的方法(推荐)

    去除IOS苹果手机自带按钮样式的方法(推荐)

    下面小编就为大家分享一篇去除IOS苹果手机自带按钮样式的方法(推荐),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • ios可拖动按钮实例

    ios可拖动按钮实例

    下面小编就为大家分享一篇ios可拖动按钮实例。具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • iOS CoreAnimation 图层几何学

    iOS CoreAnimation 图层几何学

    本文主要介绍了iOS CoreAnimation图层几何学,图层几何所讲主要是有关图层的位置,尺寸等几何类属性。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • iOS实现圆角箭头视图

    iOS实现圆角箭头视图

    这篇文章主要为大家详细介绍了iOS实现圆角箭头视图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • IOS中UIWebView、WKWebView之JS交互

    IOS中UIWebView、WKWebView之JS交互

    本篇文章主要介绍了IOS中UIWebView、WKWebView之JS交互,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • 详解iOS App中UIPickerView滚动选择栏的添加方法

    详解iOS App中UIPickerView滚动选择栏的添加方法

    UIPickerView组件在应用中选择地区等方面的运用非常常见,能够提供多列的选择项,下买呢我们就来详解iOS App中UIPickerView滚动选择栏的添加方法
    2016-05-05
  • iphone的safari浏览器中实现全屏浏览的方法

    iphone的safari浏览器中实现全屏浏览的方法

    这篇文章主要介绍了iphone的safari浏览器中实现全屏浏览的方法,同时介绍了Add to Home Screen功能的实现方法,需要的朋友可以参考下
    2014-06-06

最新评论