2012-05-23 109 views
0

我有一個IBAction,當觸發時調用另一個視圖控制器(APICallsViewController)中的另一個方法。我正在尋找也發送該方法一個NSString(消息)如何發送一個NSString到另一個視圖控制器

這裏是我的IBAction推到APICallsViewController和NSString消息。我的問題可能是如何在其他視圖控制器的方法中獲取該NSString的內容。

感謝您的幫助

-(IBAction) someMethod{ 
     APICallsViewController *apiViewController = [[APICallsViewController alloc] init]; 
     [self.navigationController pushViewController:apiViewController animated:YES]; 

     NSString *message = [NSString stringWithFormat:@"Check out %@", nameLb.text]; 

     [apiViewController apiGraphUserCheckins]; 

     [apiViewController release]; 

} 

回答

1

做到這一點的代碼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]; 

} 
1

聲明中的ViewController到您有一個字符串傳遞string.And從中你必須通過字符串,你的情況來看,設置像 apiViewController.stringintheotherview =消息;

在APICallsViewController字符串必須合成

NSString *message = [NSString stringWithFormat:@"Check out %@", nameLb.text]; 
     APICallsViewController *apiViewController = [[APICallsViewController alloc] init]; 
apiViewController.stringintheotherview=message; 
      [self.navigationController pushViewController:apiViewController animated:YES]; 
1

爲什麼要以編程方式傳遞字符串,而不是聲明函數參數?您可以將功能更改爲類似

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

調用它

[apiViewController apiGraphUserCheckins:[NSString stringWithFormat:@"Check out %@", nameLb.text]]; 
0

聲明中SecondViewController的屬性。然後,您可以在2ways中的SecondViewController中獲取字符串。

  1. 在FirstViewController的someMethod爲secondviewController創建對象之後可以分配的值直接

    second.string2 = [NSString的stringWithFormat:@ 「%@」,[文本框的文本]];

  2. 在SecondViewController中創建一個方法並通過它進行分配。

相關問題