2012-07-16 100 views
1

是否使用[self presentModalViewController:videoViewController animated:YES];堆叠多个视图?呈现视图控制器使用ios5和故事板

关于videoViewController我加载了几个UIWebViews,每个人加载视频。我在该视图上有一个按钮,允许更改类别。当点击类别按钮时,它会显示一个弹出视图,并在该视图内有不同类别的几个按钮。当按下其中一个按钮,我做以下,回到videoViewController:

VideoViewController *videoViewController= [self.storyboard instantiateViewControllerWithIdentifier:@"VideoVC"]; 
[self presentModalViewController:videoViewController animated:YES]; 

其中一期工程,解聘类别酥料饼的视图,并返回到在不同的视频videoViewController加载。但是,接下来的几次,我的应用程序开始崩溃后,'接收到内存警告'消息。

我有一个类别'全部'加载所有视频,并没有得到这样的消息,但然后改变类别几次(每个课程加载更少的视频,因为它是过滤器)我是得到警告。 所以我真正的问题是,当我改变类别并且打电话[self presentModalViewController:videoViewController animated:YES];时,是否每次改变类别时都会占用一个视图?因此,举例来说,如果我改变5次类别,我会有5个videoViewController视图是否彼此重叠?如果是这样,那么避免这种情况的最好方法是什么?

我试着[self presentModalViewController:videoViewController animated:YES];而不是看看是否会有所作为,但viewViewController不重新加载和类别弹窗视图不关闭。

这是为iPad应用程序,如果这有所作为。

谢谢。

回答

0

每次使用此线时间:

VideoViewController *videoViewController= [self.storyboard instantiateViewControllerWithIdentifier:@"VideoVC"]; 

您正在创建VideoViewController的一个新的即时和所有UIWebViews中。你需要的是使用Objective-C的委托模式。当用户在弹窗视图中选择其中一个按钮时,您需要回调到VideoViewController的原始时间,并传回用户已选择的按钮(例如某种类型的数字),并从那里处理更改。

+0

我明白了。如果不是太痛苦,你有没有回调VideoViewController的原始实例的例子? – Nathan 2012-07-16 11:51:31

+0

这是我以前的答案之一,有一个例子。 http://stackoverflow.com/questions/8606674/uimodaltransitionstylepartialcurl-doesnt-get-back-to-previous-state-not-dismi/8607949#8607949 – user523234 2012-07-16 11:53:45

+0

嗨,我试着实现你的答案到我的项目,但点击在类别视图中的按钮,视频视图没有改变,弹出仍然存在:( – Nathan 2012-07-18 09:48:42

相关问题