OC在block内部定义block并递归

1、如何定义block:
格式为:[返回值] (^block名称)(形参类型1,形参类型2) = ^(形参1,形参2){ // code}
例如:NSString *(^myBlock)(int, NSString*) = ^(int i, NSString *text){ return @”sian”}

2、应用场景
2.1、使用FMDB框架查询数据,如果需要模糊查询时如果查询结果为空,需要修改查询值再次查询;
2.2、例如现在有一张城市名称、城市编码的数据库表,数据库中的城市名称如:北京、长沙等;
2.3、用户在查询时有可能输入的是“北京市”,还有一些自治区县名称都特别长,而在数据库中有可能是简写的;
2.4、SQL语句中使用like进行模糊查询只能是查询关键字是结果的一部分才可行,如果查询关键字大于结果值是无法查询到的;
2.5、如果数据库中是北京市,使用“北京”去like查询是可以查询到北京市的,反过来则不行;
2.6、基本想法是如果like查询为空,将关键字长度减1去掉最后一个字再次查询,直到返回查询结果或关键字被减至0再返回;
2.6、如数据库中存在北京,使用“北京市”去like查询,结果为空则将北京市修改为“北京”再查询,如果返回为空再修改为“北”查询…[……]

继续阅读

[BMKGradient generateColorMap:resultColorMap:]: unrecognized selector sent to instance 0x7fae64f32260

[BMKGradient generateColorMap:resultColorMap:]: unrecognized selector sent to instance 0x7fae64f32260

如题,这么恶心的一个问题,找了好久,百度上也找不到相关答案,最后还是问Google问出来的!

解决方案是在Build Settings–Linking–[Other Linker Flags]中添加一个“-ObjC”,即可搞定!

附加百度添加热力图的demo方法:[……]

继续阅读

cannot find protocol definition for ‘TencentSessionDelegate’

iOS项目中在使用QQSDK登录时,出现警告:cannot find protocol definition for ‘TencentSessionDelegate’
这是因为TencentSessionDelegate 继承自 TencentApiInterfaceDelegate ,没有引入这个包,因此会有警告,腾讯不严谨!
其实不影响使用,但不爽,要解决这个问题,我们可以在警告的页面中引入

1
#import <TencentOpenAPI/TencentApiInterface.h>

即可解决![……]

继续阅读