【问题标题】:how to access second_view_controller's scroll view from first_view_controller in iOS如何从 iOS 中的 first_view_controller 访问 second_view_controller 的滚动视图
【发布时间】:2014-09-04 08:11:53
【问题描述】:

例如,

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{

track *transferViewController = [segue destinationViewController];
if([txt1.text isEqualToString:@"scroll"]) {
 transferViewController.trackData = @"Scrolling Part >"; //secondviewcontroller's LABEL
    [transferViewController.scrviw1 setScrollEnabled:YES];
    [transferViewController.scrviw1 setContentSize:(CGSizeMake(280, 800))];
}
else{
   transferViewController.trackData = @"Scroll view Not enabled >"; 
}
}

现在,如果 v 运行代码,,,,如果条件满足,,“滚动部分”标签显示在下一个控制器中,但没有显示滚动视图。如何访问此滚动条????

【问题讨论】:

  • 需要更多细节。尝试这个的目的是什么?
  • 你需要什么详细信息????
  • 我建议在 scrviw1 所在的视图控制器的 -viewWillAppear: 上进行 UI 更新。
  • 在我的另一个选择中,你需要在第一个视图控制器中获取滚动视图,你将数据从第一个 VC 传递到第二个 VC,你检查第二个 VC 中的数据和条件

标签: ios xcode storyboard scrollview


【解决方案1】:

试试这个:

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{

track *transferViewController = [segue destinationViewController];
if([txt1.text isEqualToString:@"scroll"]) {
 transferViewController.trackData = @"Scrolling Part >"; //secondviewcontroller's LABEL
 [transferViewController view]; // to make sure view is loaded
 dispatch_async(dispatch_get_main_queue(), ^{
                [transferViewController.scrviw1 setScrollEnabled:YES];
                [transferViewController.scrviw1 setContentSize:(CGSizeMake(280, 800))];
            });

}
else{
   transferViewController.trackData = @"Scroll view Not enabled >"; 
}
}

【讨论】:

    【解决方案2】:

    你按照下面的方式做 -

    -(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
    {
      transferViewController = [segue destinationViewController];   //Make global declaration of track.
      if([txt1.text isEqualToString:@"scroll"]) {
      {
        transferViewController.scrollFlag = YES;   //Create a Bool property as scrollFlag
        //OR
        [transferViewController setScrollWithFlag:@"YES"];   //A method to set scroll of scrollView.
    
         //Also do what u want to do.
      }
      else
      {
       //Do as u did.
      }
    }
    

    类似地创建 Bool 属性 (scrollFlag) 或在轨道控制器中实现 setScrollWithFlag 方法。并且您将能够设置滚动视图的滚动。

    还有什么请告诉我。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-03
      • 2016-01-11
      • 1970-01-01
      • 2016-12-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多