简体   繁体   中英

how to access second_view_controller's scroll view from first_view_controller in iOS

For example,,

-(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 >"; 
}
}

Now,, if v run the code,,, if condition satisfied,, "Scrolling part" label is displayed in next controller,, but scroll view is not displaying.how to access this scroll bar????

You do as below -

-(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.
  }
}

Similarly create that Bool property (scrollFlag) or implement that setScrollWithFlag method in track controller. And you will be able to set scroll of scrollview.

Anything else pls let me know.

try this:

-(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 >"; 
}
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM