xinyoulingxi1_tong 2012-11-30 06:30 采纳率: 0%
浏览 2245
已采纳

在一个类中block问题

在类中定义一个property,作为block用

@property (nonatomic, strong) void (^ myBlock)();

然后想在property在代码中使用时为block创建了一个获取,如果property是NSArray,就可以这样设置:

@synthesize myProperty = _myProperty;

- (NSArray *)myProperty {

    if (_myProperty) {
        _myProperty = [[NSArray alloc] init];
    }

    return _myProperty;
}

但是property是block,应该怎么设置实例化?

  • 写回答

2条回答 默认 最新

  • g989_1314125 2012-11-30 07:06
    关注

    在h文件

    typedef BOOL (^MyProcessorBlock)(id param1);
    
    @property (nonatomic, copy) MyProcessorBlock myBlockProperty
    

    在m文件

    @synthesize myBlockProperty = _myBlockProperty;
    

    其他情况在m文件中

    - (MyBlock)myBlockProperty {
        if(!_myBlockProperty) {
            _myBlockProperty = ^(self) { ..... };
        }
        return _myBlockProperty;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效