参考地址 ios 代码写Button小结
- (void)viewDidLoad{[super viewDidLoad];// 设置按钮类型,此处为圆角按钮UIButton *writeButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];// 设置和大小CGRect frame = CGRectMake(100.0f, 100.0f, 140.0f, 50.0f);// 将frame的位置大小复制给ButtonwriteButton.frame = frame;//-----------------------------------------------// 给Button添加标题 [writeButton setTitle:@"代码按钮" forState:UIControlStateNormal];// 设置按钮背景颜色 writeButton.backgroundColor = [UIColor clearColor];// 设置按钮标题文字对齐方式,此处为左对齐writeButton.contentHorizontalAlignment =UIControlContentHorizontalAlignmentLeft;//使文字距离做边框保持10个像素的距离。writeButton.contentEdgeInsets = UIEdgeInsetsMake(0,30, 0, 0);//----------------------------------------------------/****************************************************** //此处类容目的掩饰代码代码操作按钮一些属性,如果设置按钮背景为图片可以将此处注释取消,注释掉上没横线范围类代码,进行测试 // 设置按钮背景图片 UIImage *image= [UIImage imageNamed:@"background.png"]; [writeButton setBackgroundImage:image forState:UIControlStateNormal]; // 按钮的相应事件 *****************************************************/[writeButton addTarget:self action:@selector(buttonClicked:)forControlEvents:UIControlEventTouchUpInside];[self.view addSubview:writeButton];}
UIButton *writeButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
设置按钮类型,按钮类型定义在一个枚举类型中
typedef enum { UIButtonTypeCustom = 0, // 没有风格 UIButtonTypeRoundedRect, // 圆角风格按钮 UIButtonTypeDetailDisclosure, // UIButtonTypeInfoLight, // 明亮背景的信息按钮 UIButtonTypeInfoDark, // 黑暗背景的信息按钮 UIButtonTypeContactAdd, // } UIButtonType;
UIControlEventTouchDown // 按下 UIControlEventTouchDownRepeat // 多次按下 UIControlEventTouchDragInside // 保持按下然后在按钮及其一定的外围拖动 UIControlEventTouchDragOutside // 保持按下,在按钮外面拖动 UIControlEventTouchDragEnter // DragOutside进入DragInside触发 UIControlEventTouchDragExit // in到out触发 UIControlEventTouchUpInside // 在按钮及其一定外围内松开 UIControlEventTouchUpOutside // 按钮外面松开 UIControlEventTouchCancel // 点击取消
//弹出一个警告,一般都这样写-(void) buttonClicked:(id)sender{UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示" message:@"你点击了一个按钮" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];[alert show];}
此处弹出的一个警告,主要用到UIAlertView这个类,initWithTitle初始化标题,message是弹出警告类容,提示你做了什么事,delegate是委托代理,此处不需要其他类做什么事,自个完全能搞定,所以设置为self,类似于C++中的this指针,cancelButtonTitle这个一看就能明白,取消按钮的标题是什么了,otherButtonTitles设置其他按钮,也就是说你需要更多按钮支持的时候,此处不需要,只要一个nil就好了,就如还需要其他的,你可以添加代码假如: otherButtonTitles:@"test1" ,@"test2" ,@"test3" ,@"test4" , nil,运行的效果就是这样:
本程序运行效果: