Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/101.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.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 modal segue中的viewcontroller中的uiscrollview_Ios_Uiscrollview_Uitableview_Uistoryboard_Uistoryboardsegue - Fatal编程技术网

Ios modal segue中的viewcontroller中的uiscrollview

Ios modal segue中的viewcontroller中的uiscrollview,ios,uiscrollview,uitableview,uistoryboard,uistoryboardsegue,Ios,Uiscrollview,Uitableview,Uistoryboard,Uistoryboardsegue,我正在使用Xcode 4.6构建一个iOS 6.x tabbar应用程序,并使用Storyboard的。在每个选项卡式视图中,添加UIScrollView并与其中放置的任何元素交互都没有问题 然而。。。当我点击一个按钮,在我的故事板中使用模态序列转换到一个新视图时,滚动视图在模态视图中不起作用 示例: TestViewController.h和TRViewController.h都包含类似以下代码: @property (strong, nonatomic) IBOutlet UIScrollV

我正在使用Xcode 4.6构建一个iOS 6.x tabbar应用程序,并使用Storyboard的。在每个选项卡式视图中,添加UIScrollView并与其中放置的任何元素交互都没有问题

然而。。。当我点击一个按钮,在我的故事板中使用模态序列转换到一个新视图时,滚动视图在模态视图中不起作用

示例:

TestViewController.h和TRViewController.h都包含类似以下代码:

@property (strong, nonatomic) IBOutlet UIScrollView *scroller;
在TestViewController.m和TRViewController.m中启用的viewDidLoad方法中:

[_scroller setScrollEnabled:YES];
[_scroller setContentSize:CGSizeMake(320, 1000)];
然后在IB中,插座正确连接到视图:

因此,对于每个视图,我的代码在IB、.h和.m之间被复制/相同。在一个领域有效,但在另一个领域无效。除此之外,我认为与我的问题相关的唯一其他障碍可能来自segue:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([segue.identifier isEqualToString:@"trSegue"]) {        
    TRViewController *_trVC = segue.destinationViewController;
    _trVC.delegate = self;
    }
}
我是不是错过了一些显而易见的东西?我在想,一旦我看到解决方案,这将是一个向前推进的时刻

想法/评论

提前谢谢!
-德鲁

嗯。。。我发现如果我只是把这个序列从一个模式改成一个推。。。无需任何额外的调整/调整,效果非常好。我想我还是走这条路吧,别再胡闹了


也就是说,我仍然很想找到一种方法来做到这一点(如果可能的话)。

嗯。。。我发现如果我只是把这个序列从一个模式改成一个推。。。无需任何额外的调整/调整,效果非常好。我想我还是走这条路吧,别再胡闹了


也就是说,我仍然很想找到一种方法(如果可能的话)。

我找到了。您必须将UIScrollView放在另一个空UIView中。在界面生成器中,您的层次结构将如下所示:


原因在于模态序列显示内容的方式。当您执行推送序列时,它实际上会将ViewController推送到导航堆栈的最顶层,而使用模式序列时,它会更改屏幕上显示的内容。我不确定这是否会导致苹果拒绝你的应用程序,但它确实有效

我明白了。您必须将UIScrollView放在另一个空UIView中。在界面生成器中,您的层次结构将如下所示:


原因在于模态序列显示内容的方式。当您执行推送序列时,它实际上会将ViewController推送到导航堆栈的最顶层,而使用模式序列时,它会更改屏幕上显示的内容。我不确定这是否会导致苹果拒绝你的应用程序,但它确实有效

谢谢!我有一个类似的问题,推动segue,并解决了它这样做。但是,当返回到包含scrollview-in-a-UIView的VC时,它被搞砸了-我通过在ViewWillDisplay()中将内容偏移量手动设置为0,0解决了这个问题。谢谢!我有一个类似的问题,推动segue,并解决了它这样做。但是,当返回到包含scrollview-in-a-UIView的VC时,它被搞砸了-我通过在ViewWillAspect()中将内容偏移量手动设置为0,0解决了这个问题。