1. 程式人生 > >IOS開發(54)之Storyboard之傳值

IOS開發(54)之Storyboard之傳值

1 前言

上一次我們介紹了Storyboard的簡單建立方法,這次我們來介紹一下如何通過Storyboard進行兩個ViewController之間的傳值。

2 程式碼例項

2.1 新建一個不帶nib檔案ViewController檔案


2.2 將Storyboard中的第二個檢視控制器的類設定為新建的SecondView


2 .3 為檢視過度的Segue標識設定一個名稱


ZYViewController.m

  1. //通知檢視控制器,繼續將被執行。UIStoryboardSegue:一個UIStoryboardSegue物件負責執行過渡兩檢視控制器。  
  2. - (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{  
  3.     //原檢視控制器  
  4.     NSLog(@"Source Controller = %@", [segue sourceViewController]);  
  5.     //目標檢視控制器  
  6.     NSLog(@"Destination Controller = %@", [segue destinationViewController]);  
  7.     //過渡標識  
  8.     NSLog(@"Segue Identifier = %@", [segue identifier]);  
  9.     if ([[segue identifier] isEqualToString:@"SimpleSegueToSecondViewController"]){  
  10.         ZYSecondViewController *viewController = [segue destinationViewController];  
  11.         viewController.str = @"sdfsdfdsfdsfs";  
  12.     }  
  13. }  

ZYSecondViewController.h

  1. #import <UIKit/UIKit.h>  
  2. @interface ZYSecondViewController : UIViewController  
  3. @property(nonatomic,copy)NSString *str;  
  4. @end  

ZYSecondViewController.m

  1. - (void)viewDidLoad  
  2. {  
  3.     [super viewDidLoad];  
  4.     // Do any additional setup after loading the view.  
  5.     //Test  
  6.     NSLog(@"str=======>%@",str);  
  7. }  
  8. -(void)dealloc{  
  9.     [str release];  
  10.     [super dealloc];  
  11. }  

執行結果:


點選Button後控制檯結果:

2013-05-09 14:10:15.850 StoryboardsTest[610:c07] Source Controller = <ZYViewController: 0x75668d0>

2013-05-09 14:10:15.850 StoryboardsTest[610:c07] Destination Controller = <ZYSecondViewController: 0x8e25730>

2013-05-09 14:10:15.851 StoryboardsTest[610:c07] Segue Identifier = SimpleSegueToSecondViewController

2013-05-09 14:10:15.852 StoryboardsTest[610:c07] str=======>sdfsdfdsfdsfs


3 結語

以上就是主要內容,希望對大家有所幫助。

轉載:http://blog.csdn.net/developer_zhang/article/details/8905258