55.UIbutton点击切换颜色

#import "ViewController.h"

#define width_w     [UIScreen mainScreen].bounds.size.width

#define height_h     [UIScreen mainScreen].bounds.size.height

#define PRO_W(width)  width_w*(width/320.0)

#define PRO_H(height)  height_h*(height/480.0)

@interface ViewController (){

NSMutableArray *_titleArr;

UIView *_view;

UIButton *_btn2;

}

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

self.view.backgroundColor = [UIColor grayColor];

_titleArr = [[NSMutableArray alloc]initWithObjects:@"上架时间",@"价格",@"销量",nil];

//    背景View

_view = [[UIView alloc]initWithFrame:CGRectMake(0, 64, width_w, PRO_W(35))];

_view.backgroundColor = [UIColor whiteColor];

[self.view addSubview:_view];

for (int i=0; i<_titleArr.count; i++) {

UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];

btn.tag = i;

[btn setTitle:[_titleArr objectAtIndex:i] forState:UIControlStateNormal];

[btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];

btn.titleLabel.font = [UIFont systemFontOfSize:13];

btn.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;

btn.frame = CGRectMake((width_w/3)*i,0,width_w/3, PRO_W(35));

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

[_view addSubview:btn];

UIView *lineView = [[UIView alloc]initWithFrame:CGRectMake((width_w/3)*i, PRO_W(5), 1,  PRO_W(25))];

lineView.backgroundColor = [UIColor grayColor];

[_view addSubview:lineView];

}

}

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

if(_btn2== btn) {

//            //本次点击的按钮设为红色

[btn setTitleColor:[UIColor redColor] forState:UIControlStateNormal];

} else{

//本次点击的按钮设为红色

[btn setTitleColor:[UIColor redColor] forState:UIControlStateNormal];

//将上次点击过的按钮设为黑色

[_btn2 setTitleColor:[UIColor grayColor] forState:UIControlStateNormal];

}

_btn2= btn;

}

上一篇:Asp.Net MVC 使用 Ajax


下一篇:一个关于WCF调用远程链接返回405错误不允许使用此方法的问题