当前位置: 首页 > news >正文

如何对网站管理网络seo哈尔滨

如何对网站管理,网络seo哈尔滨,自己怎么设计公司标志,什么是网络推广方案2019独角兽企业重金招聘Python工程师标准>>> Object-c的block和Swift的闭包的对比 本来来说说在OC和Swift的block和闭包的区别和使用 主要以对比的形式写出。 gitHub:https://github.com/7General/OC-BlocK-Swift/tree/master Object-c申明一个在函数中使用Block且不…

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

Object-c的block和Swift的闭包的对比

本来来说说在OC和Swift的block和闭包的区别和使用
主要以对比的形式写出。

gitHub:https://github.com/7General/OC-BlocK-Swift/tree/master

Object-c申明一个在函数中使用Block且不带参数和没返回值的block

// ****1:在函数中使用Block不带参数和没返回值的block
-(void)AFNetWork:(NSString *)name withComplated:(void(^)())complated {NSLog(@"----函数中打印-%@",name);if (complated) {complated();}
}// ********调用函数
[self AFNetWork:@"ZZ" withComplated:^{NSLog(@"----Block--打印");
}];

Swift 声明不带参数和没返回值的闭包

// 声明不带参数和没返回值的闭包
func HttpTools(names: Int ,complated:() -> ()) -> Int {let resInt = names + 10print("1:先执行函数")complated()return resInt
}// ********调用
HttpTools(15) { print("2:在执行Block了")
}

Object-C 声明带参数和有返回值的Block在函数名中

// ***2:声明带参数和有返回值的Block在函数名中
-(void)AFNetWork:(NSString *)name withComplatedRetunStr:(NSString *(^)(NSString * names,NSString * school))complated {NSLog(@"----函数中打印带参数有返回值-%@",name);if (complated) {complated(name,@"军事博物馆");}
}// ********调用
[self AFNetWork:@"中国" withComplatedRetunStr:^NSString *(NSString *names,NSString * school) {NSLog(@"----Block函数中打印带参数有返回值-%@-----%@",names,school);return names;
}];

Swift 声明带参数和有返回值的闭包在函数名中

// 声明带参数和有返回值的闭包在函数名中
func ajaxTools(name:String ,complated:(runStr: String,isStop:Bool) -> String) -> String {let resStr = name + "覆水难收"complated(runStr: resStr, isStop: true)return resStr + " - 内部函数返回"
}// ********调用
let ajaxResult = ajaxTools("洲洲哥") { (runStr, isStop) -> String inprint("-----\(runStr)")return ""
}

**Object-C里子页面给父页面传值**

工程目录

1240

OC-Block.png

在SecondViewController.h文件中 申明一个Block

typedef void(^changUserName)(NSString * userNames);

把Block申明成属性

@property (nonatomic, copy) changUserName  changText;
// 还可把set方法抛出来(或者使用实例方法调用)
-(void)setChangText:(changUserName)changText;

点击返回按钮的回调方法我们要这样写

-(void)playVideoBack {if (self.changText) {self.changText(self.inputFiled.text);}[self.navigationController popViewControllerAnimated:YES];
}

**在跳转按钮的方法里我们这样写(两种方法,对不两种不同属性哦)

-(void)ButtonClick {SecondViewController * sec = [[SecondViewController alloc] init];/**防止循环引用*/__weak typeof(self) WeakSelf = self;
// 第一种写法
//    sec.changText = ^(NSString * textStr) {
//        WeakSelf.userNames.text = textStr;
//        [WeakSelf AFNetWork:@"历史遗留痕迹" withComplated:^{
//            NSLog(@"----block---弱引用");
//        }];
//    };
// 第二种写法[sec setChangText:^(NSString *userNames) {WeakSelf.userNames.text = userNames;[WeakSelf AFNetWork:@"历史遗留痕迹" withComplated:^{NSLog(@"----block---弱引用");}];}];[self.navigationController pushViewController:sec animated:YES];
}

**Swift里子页面给父页面传值**

工程目录

1240

swift-闭包.png


在SecondViewController.swift文件中 申明一个闭包

typealias changUserName = (String) ->()

把闭包申明成属性

var changText: changUserName?// 或者使用实例方法调用(方法名字不固定,但参数是必须的)
func setMyChangeName(tempClose: changUserName)  {self.changText = tempClose
}

点击返回按钮的回调方法我们要这样写

func pushClick()  {changText!(self.changName.text!)self.navigationController?.popViewControllerAnimated(true)
}

**在跳转按钮的方法里我们这样写(两种方法,对不两种不同属性哦)

 func ClickAction() {let secondVC = SecondViewController()// 防止循环引用weak var WeakSelf = self// 第一用方法secondVC.changText = { (names) -> () inprint("------\(names)")WeakSelf!.userNames!.text = names}// 第二用方法
// secondVC.setMyChangeName { (names) in
// print("------\(names)")
// WeakSelf!.userNames!.text = names
// }self.navigationController?.pushViewController(secondVC, animated: true)}

转载于:https://my.oschina.net/iceTear/blog/1586158

http://www.lbrq.cn/news/2661787.html

相关文章:

  • 校友网站 建设百度榜单
  • 孝感网站建设公司短视频营销案例
  • 什么样的网站需要认证百度认证平台官网
  • abc建站网品牌推广包括哪些内容
  • 现在做网站建设的公司多么网页制作app手机版
  • 网站建设前景如何网站秒收录工具
  • 珠海网站制作推广公司万网官网域名查询
  • 怎样做公司官方网站上海网站关键词排名优化报价
  • 地产项目网站建设ppt种子资源地址
  • 免费b站在线观看人数在哪儿关键词优化seo外包
  • 网站建设lieyanmaseo图片优化的方法
  • 汕头网站建设推荐微博指数查询入口
  • 中国建设部网站官网推广计划方案
  • 网站已备案 还不能访问怎么把产品放到网上销售
  • 网站建设有什么好处流量推广平台
  • 网站长尾词挖掘创意广告
  • 阿里巴巴网站是用什么技术做的seo搜索引擎优化题库
  • 如何做论文网站百度快照怎么弄
  • 做网站能不能放暴露图片品牌线上推广方案
  • 商贸网站建设网络推广靠谱吗
  • 昆明市做网站淘宝排名查询工具
  • 网站开发要学多久全网营销方案
  • 信阳建网站聚名网域名
  • 畜牧企业网站模板aso优化是什么意思
  • 公司网站维护建设费入什么科目百度seo排名优化排行
  • 关于色彩搭配的网站沈阳seo推广
  • wordpress手机验证免插件seo搜索优化网站推广排名
  • github个人网站模板百度关键词下拉有什么软件
  • 南京网站建设设计怎么制作百度网页
  • 国外网站众筹怎做aso优化报价
  • 不同于传统的简并模分离圆极化天线,基于耦合谐振器的圆极化天线的原理是什么?
  • 【面试场景题】异地多活改造方案
  • Redis 监控与优化方案(C++项目)
  • 元数据管理与数据治理平台:Apache Atlas 分类传播 Classification Propagation
  • P1890 gcd区间
  • 【无标题】AI 赋能日常效率:实用案例与操作心得分享