Iphone 取消按钮和UIActionSheet出现问题

Iphone 取消按钮和UIActionSheet出现问题,iphone,uiactionsheet,Iphone,Uiactionsheet,如何确定UIActionSheet上是否按下了取消按钮 我的UIActionSheet设置如下: -(IBAction)fileButtonPressed { UIActionSheet *mymenu = [[UIActionSheet alloc] initWithTitle:@"Select Folder" delegate:self

如何确定UIActionSheet上是否按下了取消按钮

我的UIActionSheet设置如下:

-(IBAction)fileButtonPressed
{
    UIActionSheet *mymenu = [[UIActionSheet alloc] 
                             initWithTitle:@"Select Folder" 
                             delegate:self 
                             cancelButtonTitle:@"Cancel" 
                             destructiveButtonTitle:nil 
                             otherButtonTitles:nil];

    for (i=0; i<3; i++) 
    { 
        [mymenu addButtonWithTitle:@"Button Name"]; 
    }

    [mymenu showInView:self.view];

}
有没有更好的设置方法

if (buttonIndex == actionSheet.cancelButtonIndex)
{
    // Handle cancel action
}

UIActionSheet还有类似于
destructiveButtonIndex
firstOtherButtonIndex
的属性可供比较。

结果证明,技巧不是使用自动取消按钮,而是自己添加它

另一个小问题是在末尾添加取消按钮,而不是在开头添加

-(IBAction)fileButtonPressed
{
    UIActionSheet *mymenu = [[UIActionSheet alloc] 
                             initWithTitle:@"Select Folder" 
                             delegate:self 
                             cancelButtonTitle:nil 
                             destructiveButtonTitle:nil 
                             otherButtonTitles:nil];
    for (int nb=0; nb<3; nb++) 
    { 
        [mymenu addButtonWithTitle:@"Button Name"]; 
    }

    mymenu.cancelButtonIndex = [mymenu addButtonWithTitle: @"Cancel"];

    [mymenu showInView:self.view];
}
-(iAction)文件按钮按下
{
UIActionSheet*mymenu=[[UIActionSheet alloc]
initWithTitle:@“选择文件夹”
代表:赛尔夫
取消按钮:无
破坏性按钮:无
其他按钮:无];
对于(int nb=0;nb


[mymenu showInView:self.parentViewController.tabBarController.view]

对不起,我想我的问题问得不对。问题是列表中的第一个按钮返回的buttonIndex为零,这被误认为是cancelButtonIndex操作。你知道我做错了什么吗?谢谢。这似乎是正确的方法,这样操作系统就可以为cancel按钮执行所有它想要的特殊操作(不同的分组、样式等)。这正好返回正确的取消索引值。UIActionSheet必须是所有iOS中最糟糕的代码
-(IBAction)fileButtonPressed
{
    UIActionSheet *mymenu = [[UIActionSheet alloc] 
                             initWithTitle:@"Select Folder" 
                             delegate:self 
                             cancelButtonTitle:nil 
                             destructiveButtonTitle:nil 
                             otherButtonTitles:nil];
    for (int nb=0; nb<3; nb++) 
    { 
        [mymenu addButtonWithTitle:@"Button Name"]; 
    }

    mymenu.cancelButtonIndex = [mymenu addButtonWithTitle: @"Cancel"];

    [mymenu showInView:self.view];
}