UIActionSheet是一种操作表单,在iOS平台弹出的选择按钮项,可以添加多项,并为每项添加点击事件。
UIActionSheet使用很简单,只需在你的视图上添加和设置代理即可,废话少说,下面代码实现:
- (void)initButton
{
UIButton *btn = [[UIButton alloc] init];
btn.frame = CGRectMake(120, 30, 80, 40);
btn.backgroundColor = [UIColor whiteColor];
btn.layer.cornerRadius = 5.0f;
btn.tag = 1;
[btn setTitle:@"弹出" forState:UIControlStateNormal];
[btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[btn addTarget:self action:@selector(clickBtn:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn];
[btn release];
}
- (void)clickBtn:(UIButton *)sender
{
UIActionSheet *actionSheet = [[UIActionSheet alloc]
initWithTitle:@"操作表单"
delegate:self
cancelButtonTitle:@"取消"
destructiveButtonTitle:@"确定"
otherButtonTitles:@"第一项", @"第二项",nil];
actionSheet.actionSheetStyle = UIActionSheetStyleBlackOpaque;
[actionSheet showInView:self.view];
[actionSheet release];
// 操作表单支持三种风格
/*
UIActionSheetStyleDefault //默认风格:灰色背景上显示白色文字
UIActionSheetStyleBlackTranslucent // 透明黑色背景,白色文字
UIActionSheetStyleBlackOpaque // 纯黑背景,白色文字
*/
}
// 代理回调方法:UIActionSheet Delegate
-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
{
if (buttonIndex == 0)
{
}else if (buttonIndex == 1)
{
}else if(buttonIndex == 2)
{
}else if(buttonIndex == 3)
{
}
}
- (void)actionSheetCancel:(UIActionSheet *)actionSheet
{
}
-(void)actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex
{
}
-(void)actionSheet:(UIActionSheet *)actionSheet willDismissWithButtonIndex:(NSInteger)buttonIndex
{
}
效果图如下: