How to send an NSString to another view controller

后端 未结 4 1875
时光说笑
时光说笑 2020-12-22 11:20

I have an IBAction that when triggered calls another method in a different view controller ( APICallsViewController). I\'m looking to also send that method an NSString (m

相关标签:
4条回答
  • 2020-12-22 12:01

    do this code in APICallsViewController.h

    @interface APICallsViewController : UIViewController{
       NSString *strMessage;
    
    }
    @property(nonatomic,retain) NSString *strMessage;
    
    @end
    

    APICallsViewController.m

     @synthesize strMessage;
    
    - (void)viewDidLoad {
    Nslog(@"%@",strMessage);
    

    }


    -(IBAction) someMethod{
    
        APICallsViewController *apiViewController = [[APICallsViewController alloc] init];
        [self.navigationController pushViewController:apiViewController animated:YES]; 
    
        NSString *message = [NSString stringWithFormat:@"Check out %@", nameLb.text];
        apiViewController.strMessage=message;
        [apiViewController apiGraphUserCheckins];
    
        [apiViewController release];
    
    }
    
    0 讨论(0)
  • 2020-12-22 12:08

    Why do you want to pass the String programmatically, instead of declaring a function parameter? You could change the Function to something like

    - (void) apiGraphUserCheckins:(NSString *)message;
    

    call it with

    [apiViewController apiGraphUserCheckins:[NSString stringWithFormat:@"Check out %@", nameLb.text]]; 
    
    0 讨论(0)
  • 2020-12-22 12:10

    Declare a string in the viewcontroller to where you have to pass the string.And in the view from which you have to pass the string,in your case,set like apiViewController.stringintheotherview=message;

    The string in your APICallsViewController must be synthesized

     NSString *message = [NSString stringWithFormat:@"Check out %@", nameLb.text];
             APICallsViewController *apiViewController = [[APICallsViewController alloc] init];
     apiViewController.stringintheotherview=message;
                [self.navigationController pushViewController:apiViewController animated:YES]; 
    
    0 讨论(0)
  • 2020-12-22 12:12

    Declare a property in SecondViewController. Then you can get string in SecondViewController in 2ways.

    1. In FirstViewController someMethod after creating object for secondviewController you can assign the value directly

      second.string2 = [NSString stringWithFormat:@"%@", [textField text]];

    2. Create a method in SecondViewController and assign through it.

    0 讨论(0)
提交回复
热议问题