iPhone中的UIActionSheet与UIAlterView

UIActionSheet:
首先,在.h文件中添加Protocol,(Protocol相当于Java中的interface)
@interface ActionSheetViewController : UIViewController
<UIActionSheetDelegate>
{
...
...
}
-(IBAction) showActionSheetButtonPressed:(id) sender;
-(IBAction) showAlterViewButtonPressed:(id) sender;

在.m文件中实现showActionSheetButtonPressed 方法。
-(IBAction) showActionSheetButtonPressed:(id) sender 
{   
UIActionSheet *actionSheet = [[UIActionSheet alloc] 
  initWithTitle:@"Title"
  delegate:self
  cancelButtonTitle:@"Cancel!" 
destructiveButtonTitle:@"OK!" 
  otherButtonTitles:nil];
[actionSheet showInView:self.view];//参数指显示UIActionSheet的parent。
[actionSheet release];
}
一个IUActionSheet在用户点击Button的时调用,但是当用户选择了destructiveButton或者cancelButton后,如何处理想对应的事件呢?
在UIActionSheetDelegate中,有一个方法,
-(void) actionSheet :(UIActionSheet *) actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex;
我们需要实现这个方法就可以了。

-(void) actionSheet :(UIActionSheet *) actionSheet didDismissWithButtonIndex:(NSInteger) buttonIndex
{
//当用户按下cancel按钮
if( buttonIndex == [actionSheet cancelButtonIndex])
{
// DoSomething here.
}
//当用户按下OK按钮
if( buttonIndex == [actionSheet destructiveButtonIndex])
{
// DoSomething here.
}
}

UIAlertView:
-(IBAction) showAlterViewButtonPressed:(id) sender
{
UIAlertView *alertView = [[UIAlertView alloc] 
  initWithTitle:@"Alert Title" 
  message:@"Alter Message Content" 
  delegate:self 
  cancelButtonTitle:@"OK" 
  otherButtonTitles:nil];
[alertView show];
[alertView release];
}

UIAlterView相对于UIActionSheet简单,以为它只是一个提示用户的View而已。可以在 UIActionSheet的的处理事件 -(void) actionSheet ...中来调用UIAlterView.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值