button里面的type有很多不同表现形式

在viewcontroller.m中续上一篇

//监听按钮点击方法

//addTarget 标识监听器,控制器监听,所以addTarget得值应该是self

//action 表示监听到按钮点击后要做的事情

//btn方法得自己实现,必须用selector包装不能直接写

//此时将-(void)btn变成-(void)btn:(UIButton *)btn执行会报错,

//解决方法:

/*需要把

[head addTarget:self action:@selector(btn) forControlEvents:UIControlEventTouchUpInside];

换成

[head addTarget:self action:@selector(btn:) forControlEvents:UIControlEventTouchUpInside];

下同

*/

[head addTarget:self action:@selector(btn:) forControlEvents:UIControlEventTouchUpInside];

//添加一个加号,用add接收,默认位置在原点

UIButton *addBtn = [UIButton buttonWithType:UIButtonTypeContactAdd];

[self.view addSubview:addBtn];

//监听多个按钮点击

[addBtn addTarget:self action:@selector(btn:) forControlEvents:UIControlEventTouchUpInside];

}

//隐藏状态栏,由控制器掌管,写一个控制器的方法就可以隐藏

-(BOOL)prefersStatusBarHidden{
return YES;

}

//测试是否监听到button的动作

-(void)btn:(UIButton *)btn{

NSLog(@”%@”,btn);

}

此时并不需要区分函数到底监听了哪个按钮,因为点击哪个按钮系统会自动判断

监听测试结果如下