循环创建多行button

#define Start_X 10.0f // 第一个按钮的X坐标 
#define Start_Y 50.0f // 第一个按钮的Y坐标 
#define Width_Space 5.0f // 2个按钮之间的横间距 
#define Height_Space 20.0f // 竖间距 
#define Button_Height 122.0f // 高 
#define Button_Width 75.0f // 宽 

-(void)addButtonS { 
for (int i = 0 ; i < 6; i++) { 
NSInteger index = i % 3; 
NSInteger page = i / 3; 
// 圆角按钮 
UIButton *mapBtn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
 mapBtn.tag = i;//这句话不写等于废了 
mapBtn.frame = CGRectMake(index * (Button_Width + Width_Space) + Start_X, page * (Button_Height + Height_Space)+Start_Y, Button_Width, Button_Height);
 [self.view addSubview:mapBtn]; 
//按钮点击方法 
[mapBtn addTarget:self action:@selector(mapBtnClick:) forControlEvents:UIControlEventTouchUpInside]; 
  } 
} 

//点击按钮方法,这里容易犯错
 -(void)mapBtnClick:(UIButton *)sender{ 
//记住,这里不能写成"mapBtn.tag",这样你点击任何一个button,都只能获取到最后一个button的值,因为前边的按钮都被最后一个button给覆盖了 
NSLog(@"%ld",sender.tag);
 }


你可能感兴趣的:(循环创建多行button)