Ios 如何将UIAlertView与操作挂钩?
我正在创建一个绘图应用程序,用户可以使用手指笔划进行绘图。我试图制作一个按钮,询问用户是否希望清除画布。此警报有两个按钮“是”和“否”。我的警报视图显示正确,但我花了一整天的时间试图找出如何将按钮与操作挂钩。到目前为止,即使在阅读和观看了许多教学资料之后,我也没有取得任何成功。从我读到的每一件事来看,我不明白为什么它不起作用。我还将UIAlertViewDelegate包含在我的.h文件中 以下是我的警报视图:Ios 如何将UIAlertView与操作挂钩?,ios,objective-c,cocoa-touch,Ios,Objective C,Cocoa Touch,我正在创建一个绘图应用程序,用户可以使用手指笔划进行绘图。我试图制作一个按钮,询问用户是否希望清除画布。此警报有两个按钮“是”和“否”。我的警报视图显示正确,但我花了一整天的时间试图找出如何将按钮与操作挂钩。到目前为止,即使在阅读和观看了许多教学资料之后,我也没有取得任何成功。从我读到的每一件事来看,我不明白为什么它不起作用。我还将UIAlertViewDelegate包含在我的.h文件中 以下是我的警报视图: - (IBAction)clearButton:(id)sender {
- (IBAction)clearButton:(id)sender {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Clear Canvas"
message:@"Are you sure?"
delegate:nil
cancelButtonTitle:@"No"
otherButtonTitles:@"Yes", nil];
[alert show];
}
以下是我的clear canvas方法:
- (void)clearCanvas:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if (buttonIndex == 1)
drawImage.image = nil;
}
任何帮助或指点都将不胜感激!我自学成才,还是个初学者!
谢谢
请注意delegate参数中的差异。您必须符合在.h中声明的委托
其次,使用委托方法-alertView:ClickedButtonIndex“从我读到的所有内容中,我无法理解为什么它不起作用”,即:我已经完成了我读到的我应该做的事情。这是我在做了许多小时的研究后得出的结论,所以您知道UIAlertViewDelegate。如果您看到您为代理传递了nil,它看起来正常吗?它应该是
self
。您应该启用-alertView:ClickedButtonIndex:
,因此我们希望您在提问之前做大量的研究。你必须对你想解决的问题表现出最低限度的理解。你没有这样做。您似乎对委托模式一无所知。这是iOS开发中非常基本的模式。更进一步:jnawaz的答案在哪里比我之前链接的答案更好?你的问题和任何答案都是不必要的,因为它被回答了数千次。如果你对这个社区不够成熟,你应该寻找另一个更适合你需要的。所以我不会为了适应你而改变。非常感谢你,这正是我所需要的。你真的帮我弄清楚了。非常感谢您的帮助,因为我现在可以继续前进了!
- (IBAction)clearButton:(id)sender {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Clear Canvas"
message:@"Are you sure?"
delegate:self
cancelButtonTitle:@"No"
otherButtonTitles:@"Yes", nil];
[alert show];
}