1

我正在尝试弹出一个没有破坏性按钮的操作表。如果我只是尝试从下面的代码中删除破坏性按钮,则会收到错误消息:UIActionSheet 没有可见界面。有谁知道为什么会这样?如何删除红色破坏性按钮?谢谢!

UIActionSheet *popupQuery = [[UIActionSheet alloc] initWithTitle:@"Title" 
delegate:self cancelButtonTitle:@"Cancel Button" destructiveButtonTitle:@"Destructive 
Button" otherButtonTitles:@"Other Button 1", @"Other Button 2", nil];
4

2 回答 2

8

只是nil作为你的destructiveButtonTitle.

只需尝试以下代码:

UIActionSheet *popupQuery = [[UIActionSheet alloc] initWithTitle:@"Title" delegate:self cancelButtonTitle:@"Cancel Button" destructiveButtonTitle:nil otherButtonTitles:@"Other Button 1", @"Other Button 2", nil];
于 2013-02-02T09:33:56.673 回答
3

我收到一个错误:UIActionSheet 没有可见界面。

愿意进一步阅读吗?消息实际上是

UIActionSheet 没有可见界面声明选择器initWithTitle:delegate:cancelButtonTitle:otherButtonTitles:

是的,因为没有这样命名的初始化程序。你不能像这样“删除”参数(因为它改变了方法的名称,为什么你会期望不存在的方法存在?

您可以简单地将nil其作为破坏性按钮标题传递。

于 2013-02-02T09:40:10.313 回答