1. 源代码下载链接:02-导航实例-storyboard实现02-导航实例-storyboard实现.zip
    38.5 KB
  2. //
  3. //  MJAboutViewController.h
  4. //  02-导航实例-storyboard实现
  5. //
  6. //  Created by apple on 13-12-10.
  7. //  Copyright (c) 2013itcast. All rights reserved.
  8. //

  9. #import<UIKit/UIKit.h>

  10. @interfaceMJAboutViewController : UIViewController

  11. @end
  12. // MJAboutViewController.m

    Map
  13. //
  14. //  MJAboutViewController.m
  15. //  02-导航实例-storyboard实现
  16. //
  17. //  Created by apple on 13-12-10.
  18. //  Copyright (c) 2013itcast. All rights reserved.
  19. //

  20. #import"MJAboutViewController.h"

  21. @interfaceMJAboutViewController ()

  22. @end

  23. @implementationMJAboutViewController

  24. - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
  25. {
  26.    self= [superinitWithNibName:nibNameOrNil bundle:nibBundleOrNil];
  27.    if(self) {
  28.        // Custom initialization
  29.     }
  30.    returnself;
  31. }

  32. - (void)viewDidLoad
  33. {
  34.     [superviewDidLoad];
  35. // Do any additional setup after loading the view.
  36. }

  37. - (void)didReceiveMemoryWarning
  38. {
  39.     [superdidReceiveMemoryWarning];
  40.    // Dispose of any resources that can be recreated.
  41. }

  42. @end
  43. // MJEditViewController.h

    Map
  44. //
  45. //  MJEditViewController.h
  46. //  02-导航实例-storyboard实现
  47. //
  48. //  Created by apple on 13-12-10.
  49. //  Copyright (c) 2013itcast. All rights reserved.
  50. //

  51. #import<UIKit/UIKit.h>

  52. @classMJEditViewController;


  53. @protocolMJEditViewControllerDelegate <NSObject>

  54. @optional
  55. - (void)editViewController:(MJEditViewController *)edit didSaveName:(NSString *)name;

  56. @end

  57. @interfaceMJEditViewController : UIViewController
  58. - (IBAction)save:(id)sender;
  59. @property(weak,nonatomic)IBOutletUITextField *nameField;

  60. @property(nonatomic,weak)id<MJEditViewControllerDelegate> delegate;

  61. @property(nonatomic,copy) NSString *name;

  62. @end
  63. // MJEditViewController.m

    Map
  64. //
  65. //  MJEditViewController.m
  66. //  02-导航实例-storyboard实现
  67. //
  68. //  Created by apple on 13-12-10.
  69. //  Copyright (c) 2013itcast. All rights reserved.
  70. //

  71. #import"MJEditViewController.h"

  72. @interfaceMJEditViewController ()

  73. @end

  74. @implementationMJEditViewController

  75. - (void)viewDidLoad
  76. {
  77.     [superviewDidLoad];
  78.    
  79.     _nameField.text = _name;
  80. }

  81. - (IBAction)save:(id)sender {
  82.    if([_delegate respondsToSelector:@selector(editViewController:didSaveName:)]) {
  83.         [_delegate editViewController:selfdidSaveName:_nameField.text];
  84.        
  85.        
  86.        //出栈
  87.         [self.navigationController popViewControllerAnimated:YES];
  88.     }
  89. }
  90. @end
  91. // MJHomeViewController.h

    Map
  92. //
  93. //  MJHomeViewController.h
  94. //  02-导航实例-storyboard实现
  95. //
  96. //  Created by apple on 13-12-10.
  97. //  Copyright (c) 2013itcast. All rights reserved.
  98. //

  99. #import<UIKit/UIKit.h>

  100. @interfaceMJHomeViewController : UIViewController
  101. @property(weak,nonatomic)IBOutletUILabel *nameLabel;

  102. @end
  103. // MJHomeViewController.m

    Map
  104. //
  105. //  MJHomeViewController.m
  106. //  02-导航实例-storyboard实现
  107. //
  108. //  Created by apple on 13-12-10.
  109. //  Copyright (c) 2013itcast. All rights reserved.
  110. //

  111. #import"MJHomeViewController.h"
  112. #import"MJEditViewController.h"

  113. @interfaceMJHomeViewController () <MJEditViewControllerDelegate>

  114. @end

  115. @implementationMJHomeViewController

  116. - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
  117. {
  118.    self= [superinitWithNibName:nibNameOrNil bundle:nibBundleOrNil];
  119.    if(self) {
  120.        // Custom initialization
  121.     }
  122.    returnself;
  123. }

  124. - (void)viewDidLoad
  125. {
  126.     [superviewDidLoad];
  127. // Do any additional setup after loading the view.
  128. }

  129. #pragma mark在执行segue跳转之前会调用一次(自动调用)
  130. - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
  131. {
  132.    // 1.取得终点控制器
  133.     MJEditViewController *dest = segue.destinationViewController;
  134.    
  135.    // 2.设置编辑控制器的代理
  136.     dest.delegate =self;
  137.    
  138.    // 3.传递姓名给编辑控制器
  139.     dest.name = _nameLabel.text;
  140. //    dest.nameField.text = _nameLabel.text;
  141. }

  142. #pragma mark MJEditViewController的代理方法
  143. - (void)editViewController:(MJEditViewController *)edit didSaveName:(NSString *)name
  144. {
  145.     _nameLabel.text = name;
  146. }
  147. @end
  148. // MJLoginViewController.h

    Map
  149. //
  150. //  MJLoginViewController.h
  151. //  02-导航实例-storyboard实现
  152. //
  153. //  Created by apple on 13-12-10.
  154. //  Copyright (c) 2013itcast. All rights reserved.
  155. //

  156. #import<UIKit/UIKit.h>

  157. @interfaceMJLoginViewController : UIViewController
  158. - (IBAction)login;
  159. @property(weak,nonatomic)IBOutletUITextField *qqField;
  160. @property(weak,nonatomic)IBOutletUITextField *pwdField;

  161. @end
  162. // MJLoginViewController.m

    Map
  163. //
  164. //  MJLoginViewController.m
  165. //  02-导航实例-storyboard实现
  166. //
  167. //  Created by apple on 13-12-10.
  168. //  Copyright (c) 2013itcast. All rights reserved.
  169. //

  170. #import"MJLoginViewController.h"

  171. @interfaceMJLoginViewController ()

  172. @end

  173. @implementationMJLoginViewController

  174. - (void)viewDidLoad
  175. {
  176.     [superviewDidLoad];
  177. // Do any additional setup after loading the view.
  178. }

  179. - (IBAction)login {
  180.    if(_qqField.text.length ==0|| _pwdField.text.length ==0)return;
  181.    
  182.    
  183.    //手动执行那根线(一根线代表一个segue对象)
  184.     [selfperformSegueWithIdentifier:@"login2home"sender:@"789"];
  185. }

  186. - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
  187. {
  188.     NSLog(@"----------------%@", sender);
  189. }
  190. @end

https://www.evernote.com/shard/s227/sh/5fea7b10-adcf-4efe-b616-493de3f9dde3/fdc9ac0c31864734d2ac3d7854795349

相关文章:

  • 2021-11-15
  • 2022-12-23
  • 2022-12-23
  • 2021-11-29
  • 2021-11-03
  • 2021-08-04
猜你喜欢
  • 2022-12-23
  • 2021-11-19
  • 2022-12-23
  • 2021-10-17
  • 2021-12-05
相关资源
相似解决方案