我拥有的是通过IB Storyboard创建的UIViewController
。该视图控制器内部有一个UIScrollView
。我已经为滚动视图启用了分页,并使用其他三个视图动态填充该滚动视图。所有VC都有对应的故事板。其中一个VC(三个用于scrollview)有一个带3个按钮的视图。单击每个按钮我想要转到其他VC的视图。所以我的故事板有一个带有scrollview的主VC。 scrollview
中的页面有三个VC,每个按钮上有三个VC可用于上传。
或多或少这有效。我可以滚动浏览页面(三个视图),在最后一个视图中我可以单击按钮,我在屏幕上看到VC的视图,但问题是这个视图似乎是UIScrollView
的一部分。因此,我可以在屏幕上滚动该新视图并获取VC的初始列表(初始和两个而不是具有按钮的那个)。这是我不想要的。
我想在新视图上进行模拟,这是一个模态视图,并且“覆盖”父VC。所以不再滚动是可能的。
我如何实现这一目标?另外,我如何在scrollview
之后回到初始VC?
答案 0 :(得分:2)
不幸的是,没有。我正在努力解决同样的问题。我有一个滚动视图,我允许用户滚动三次,然后我提供一个按钮导航到另一个视图控制器(购买应用内购买)。我已经尝试了一切使segue工作,但似乎没有任何工作。 [self parentViewController] =在我的情况下为nil,我认为这是我的问题。
// Here is the code from the scrollview controller:
- (IBAction)buyNowButtonClicked:(id)sender {
NSLog(@"The purchases/buy now button was pressed....");
if ([self navigationController] ==nil)
NSLog(@"self.navigationcontroller = nil"); // always nil
MoonPhasePageViewController *parentViewController = (MoonPhasePageViewController *)[self parentViewController];
if (parentViewController == nil)
NSLog(@"parentViewController = nil");
else
[parentViewController launchPurchasesViewController];
};
// Here is the method from the parentViewController:
-(void) launchPurchasesViewController{ // never invoked
NSLog(@"Entered parent view, trying to launchPurchases");
[self performSegueWithIdentifier:@"launchPurchases" sender:self];
}
我也试过[self performSegueWithIdentifier:@“launchPurchases”sender:self];和[[self parentViewController] performSegueWithIdentifier:@“launchPurchases”sender:self]];。两者都失败了,所以我试着在parentViewController中调用一个方法并在那里执行segue ...没有骰子,因为parentViewController是nil。仅供参考,我在IB中为parentPageViewController和scrollViewController创建了push segues。