Ios 按顺序执行2取消按钮
我有一个视图控制器,它有两个不同的段,连接到两个不同的视图控制器,我必须在两个控制器中都执行“取消”按钮。当我按下“取消”按钮时,在两个控制器中,视图将返回到初始视图控制器。我的问题是如何实现按钮?当我尝试使用此代码时,编译器警告:找到并忽略了方法“cancel:”的多个声明。谢谢 接口:Ios 按顺序执行2取消按钮,ios,Ios,我有一个视图控制器,它有两个不同的段,连接到两个不同的视图控制器,我必须在两个控制器中都执行“取消”按钮。当我按下“取消”按钮时,在两个控制器中,视图将返回到初始视图控制器。我的问题是如何实现按钮?当我尝试使用此代码时,编译器警告:找到并忽略了方法“cancel:”的多个声明。谢谢 接口: -(IBAction)cancel:(UIStoryboardSegue *)segue; -(IBAction)done:(UIStoryboardSegue *)segue; -(IBAc
-(IBAction)cancel:(UIStoryboardSegue *)segue;
-(IBAction)done:(UIStoryboardSegue *)segue;
-(IBAction)cancel:(UIStoryboardSegue *)segue;
实施:
-(IBAction)done:(UIStoryboardSegue *)segue
{
if([[segue identifier] isEqualToString:@"ReturnInput"]){
AddSightingViewController *addController = [segue sourceViewController];
if (addController.birdSighting) {
[self.dataController
addBirdSightingWithSighting:addController.birdSighting];
[[self tableView]reloadData];
}
[self dismissViewControllerAnimated:YES completion:NULL];
}
}
-(IBAction)cancel:(UIStoryboardSegue *)segue
{
if([[segue identifier] isEqualToString:@"CancelInput"]){
[self dismissViewControllerAnimated:YES completion:NULL];
}
}
我不知道你想做什么。但是我认为cancel方法需要在两个子视图控制器中,而不是在主视图控制器中。每个控制器一个(每个视图一个取消按钮)。这样,一个方法的多个声明就不会有任何问题。从您的代码中,我得出结论,您正在使用(或希望使用)退出序列来取消 首先,在初始视图控制器中,cancel方法应该只有一个方法声明和实现。在情节提要中,通过将控件从“取消”按钮拖动到绿色的“退出”图标来创建退出序列。拖动视图控制器并选择在初始视图控制器中定义的“取消”方法。对两个视图控制器都执行此操作。您还应该在故事板中为退出序列指定不同的标识符(您需要在文档大纲中选择该序列以更改其标识符) 然后,初始视图控制器中的cancel方法可以如下所示:
-(IBAction)cancel:(UIStoryboardSegue *)segue
{
if([[segue identifier] isEqualToString:@"CancelInput1"]) {
// Do something
} else if([[segue identifier] isEqualToString:@"CancelInput2"]) {
// Do something different
}
}
如果取消时不想执行任何操作,请将该方法留空。如果不想返回,则需要执行一个“展开”序列
- (IBAction)methodName:(UIStoryboardSegue *)segue
{
}
要执行此操作,请定义一个方法以返回原始视图控制器(要返回的视图控制器)。您可以将该方法保留为空
- (IBAction)methodName:(UIStoryboardSegue *)segue
{
}
然后在IB上按住ctrl键并从按钮(或视图控制器)拖动到绿色的“退出”图标。从弹出菜单中选择methodName。如果是从视图控制器执行的,请在segue上设置标识符,并使用按钮操作中的PerformsgueWithIdentifier:调用它
考虑事项:
- 将在序列图像板上的每个视图控制器中检测方法名称
- 您可以在不同的视图控制器中定义相同的方法名称,但是当您执行“展开”序列时,您将返回到导航路径上最近的一个