Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 手动将一个视图推送到另一个视图(ObjC)_Ios_Objective C_Cocoa Touch_Storyboard_Segue - Fatal编程技术网

Ios 手动将一个视图推送到另一个视图(ObjC)

Ios 手动将一个视图推送到另一个视图(ObjC),ios,objective-c,cocoa-touch,storyboard,segue,Ios,Objective C,Cocoa Touch,Storyboard,Segue,2天以来,我一直在做这件事,搜索了几乎27个不同的答案,但都做不到 我想手动将我的视图推到另一个视图,我用标识符gameView创建了一个Segue,并尝试使用PrepareForegueWithIdentifier方法,但它不起作用,总是说我的viewController找不到标识符为“gameView”的Segue,即使它存在 以下是一些屏幕截图,以便于更好地理解: 早些时候,我使用的代码与prepareForSegue中的代码相同(没有使用手动推送,因此没有PrepareWithiI

2天以来,我一直在做这件事,搜索了几乎27个不同的答案,但都做不到
我想手动将我的视图推到另一个视图,我用标识符gameView创建了一个Segue,并尝试使用PrepareForegueWithIdentifier方法,但它不起作用,总是说我的viewController找不到标识符为“gameView”的Segue,即使它存在

以下是一些屏幕截图,以便于更好地理解:

早些时候,我使用的代码与prepareForSegue中的代码相同(没有使用手动推送,因此没有PrepareWithiIdentifier),因为早些时候我从单元格选择中推送视图,并且它正在工作,但现在由于实现异步任务等原因,我需要手动推送视图


在这方面的任何帮助都将不胜感激。

在看到您的项目后,我看到您正在使用segue,并将其弄得一团糟,这混淆了程序,我将其删除,并使用UITableView的委托方法创建了选择系统

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
然后处理一些数据,完成后,我使用该方法显示正确的ViewController

presentViewController:(UIViewController *)viewController animate:(BOOL)animate completion:^{block}
ID指的是故事板或要更改为的VC

而不是使用

[self dismissViewControllerAnimated:YES completion:nil];//<-- this could cause a warning

segue连接到哪个控制器?您从哪里连接segue?直接从控制器GDmainTableViewController?GDmainTableView(参见图2),它从GDmainTableView连接到GDgameView(图1)@developerdougI我不确定你所说的图1和图2是什么意思,但如果你在进行手动切换,则必须从控制器本身进行连接,不是表格视图或单元格--您应该控制从场景底部的控制器图标拖动。@rdelmar是的,请参见上面的注释,它直接从一个VC拖动到另一个VC(选择要拖动的黄色图标)ID指的是什么?故事板ID或我要更改的VC?我在哪里可以设置这个ID,identity inspector?好的,我设置了ID(img 1),使用了你的代码(img 2),得到了错误(img 3)1。2.3.尝试注释掉dismissViewController。我认为这会使当前VC为空,当你稍后尝试调用presentViewController时:它不起作用,因为self为空。顺便问一下,在创建VC对象时,我应该使用UIViewController或GDgameViewController吗?将其设为UIViewControllerI我没有评论的能力,因此将其作为答案发布不起作用,请参阅我对@Arbiutr的答案所做的评论,与此错误相同。在所有编辑之后,应用程序都无法工作。应用程序试图在目标上呈现一个无模式视图控制器。请检查此项
[self dismissViewControllerAnimated:YES completion:nil];//<-- this could cause a warning
[[[self parentViewController] parentViewController] dismissViewControllerAnimated:YES completion:nil];