In Swift I can give a variable a value using an anonymous closure:
let thumbnailImageView: UIImageView = {
let imageView = UIImageView()
imageView.backGroundColor = UIColor.blueColor()
return imageView;
}
addSubView(thumbnailImageView)
thumbnailImageView.frame = CGRectMake(0,0,100,100)
I am trying to do the same in Obj-C, but this results in an error when adding the subview and setting its frame:
UIImageView* (^thumbnailImageView)(void) = ^(void){
UIImageView *imageView = [[UIImageView alloc] init];
imageView.backgroundColor = [UIColor blueColor];
return imageView;
};
[self addSubview:thumbnailImageView];
thumbnailImageView.frame = CGRectMake(0, 0, 100, 100);
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…