您的位置:首页 > 其它

block使用的一个例子

2015-11-19 11:39 288 查看
.h

// Copyright © 2015年 1. All rights reserved.

//

import

import “BlockDemoViewController.h”

import “BlockCustomItem.h”

import “BlockCustomButton.h”

@interface BlockDemoViewController ()

@end

@implementation BlockDemoViewController

(void)viewDidLoad {

[super viewDidLoad];

// Do any additional setup after loading the view.

BlockCustomItem *customItem = [[BlockCustomItem alloc] init];

customItem.block = ^{

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil message:@”提示” delegate:self cancelButtonTitle:@”取消” otherButtonTitles:@”确定”, nil];

[alert show];

};

BlockCustomButton *blockButton = [BlockCustomButton buttonWithType:UIButtonTypeCustom];

blockButton.frame = CGRectMake(50, 100, 100, 30);

blockButton.backgroundColor = [UIColor colorWithRed:59.0/255.0 green:249.0/255.0 blue:199.0/255.0 alpha:1.0];

blockButton.item = customItem;

[blockButton addTarget:self action:@selector(blockButtonAction:) forControlEvents:UIControlEventTouchUpInside];

[self.view addSubview:blockButton];

}

(void)blockButtonAction:(BlockCustomButton *)button {

if (button.item.block) {

button.item.block();

}

}

(void)didReceiveMemoryWarning {

[super didReceiveMemoryWarning];

// Dispose of any resources that can be recreated.

}

@end

.h

import

import “BlockCustomItem.h”

@interface BlockCustomButton : UIButton

@property (nonatomic, strong) BlockCustomItem *item;

@end

.m

import “BlockCustomButton.h”

@implementation BlockCustomButton

@end

.h

import

import “BlockCustomItem.h”

@implementation BlockCustomItem

(id)init {

self = [super init];

if (self) {

self.title = @”“;

}

return self;

}

@end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: