ios开发笔记之十三 –用代码来监听按钮的点击
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);
}
此时并不需要区分函数到底监听了哪个按钮,因为点击哪个按钮系统会自动判断
监听测试结果如下