1. 源代码下载链接:02-导航实例-storyboard实现.zip
    38.5 KB
  2. // MJAboutViewController.h

  3. //
  4. //  MJAboutViewController.h
  5. //  02-导航实例-storyboard实现
  6. //
  7. //  Created by apple on 13-12-10.
  8. //  Copyright (c) 2013年itcast. All rights reserved.
  9. //
  10. #import<UIKit/UIKit.h>
  11. @interfaceMJAboutViewController : UIViewController
  12. @end
  13. // MJAboutViewController.m

    Map

  14. //
  15. //  MJAboutViewController.m
  16. //  02-导航实例-storyboard实现
  17. //
  18. //  Created by apple on 13-12-10.
  19. //  Copyright (c) 2013年itcast. All rights reserved.
  20. //
  21. #import"MJAboutViewController.h"
  22. @interfaceMJAboutViewController ()
  23. @end
  24. @implementationMJAboutViewController
  25. - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
  26. {
  27.    self= [superinitWithNibName:nibNameOrNil bundle:nibBundleOrNil];
  28.    if(self) {
  29.        // Custom initialization
  30.     }
  31.    returnself;
  32. }
  33. - (void)viewDidLoad
  34. {
  35.     [superviewDidLoad];
  36. // Do any additional setup after loading the view.
  37. }
  38. - (void)didReceiveMemoryWarning
  39. {
  40.     [superdidReceiveMemoryWarning];
  41.    // Dispose of any resources that can be recreated.
  42. }
  43. @end
  44. // MJEditViewController.h

    Map

  45. //
  46. //  MJEditViewController.h
  47. //  02-导航实例-storyboard实现
  48. //
  49. //  Created by apple on 13-12-10.
  50. //  Copyright (c) 2013年itcast. All rights reserved.
  51. //
  52. #import<UIKit/UIKit.h>
  53. @classMJEditViewController;
  54. @protocolMJEditViewControllerDelegate <NSObject>
  55. @optional
  56. - (void)editViewController:(MJEditViewController *)edit didSaveName:(NSString *)name;
  57. @end
  58. @interfaceMJEditViewController : UIViewController
  59. - (IBAction)save:(id)sender;
  60. @property(weak,nonatomic)IBOutletUITextField *nameField;
  61. @property(nonatomic,weak)id<MJEditViewControllerDelegate> delegate;
  62. @property(nonatomic,copy) NSString *name;
  63. @end
  64. // MJEditViewController.m

    Map

  65. //
  66. //  MJEditViewController.m
  67. //  02-导航实例-storyboard实现
  68. //
  69. //  Created by apple on 13-12-10.
  70. //  Copyright (c) 2013年itcast. All rights reserved.
  71. //
  72. #import"MJEditViewController.h"
  73. @interfaceMJEditViewController ()
  74. @end
  75. @implementationMJEditViewController
  76. - (void)viewDidLoad
  77. {
  78.     [superviewDidLoad];
  79.    
  80.     _nameField.text = _name;
  81. }
  82. - (IBAction)save:(id)sender {
  83.    if([_delegate respondsToSelector:@selector(editViewController:didSaveName:)]) {
  84.         [_delegate editViewController:selfdidSaveName:_nameField.text];
  85.        
  86.        
  87.        //出栈
  88.         [self.navigationController popViewControllerAnimated:YES];
  89.     }
  90. }
  91. @end
  92. // MJHomeViewController.h

    Map

  93. //
  94. //  MJHomeViewController.h
  95. //  02-导航实例-storyboard实现
  96. //
  97. //  Created by apple on 13-12-10.
  98. //  Copyright (c) 2013年itcast. All rights reserved.
  99. //
  100. #import<UIKit/UIKit.h>
  101. @interfaceMJHomeViewController : UIViewController
  102. @property(weak,nonatomic)IBOutletUILabel *nameLabel;
  103. @end
  104. // MJHomeViewController.m

    Map

  105. //
  106. //  MJHomeViewController.m
  107. //  02-导航实例-storyboard实现
  108. //
  109. //  Created by apple on 13-12-10.
  110. //  Copyright (c) 2013年itcast. All rights reserved.
  111. //
  112. #import"MJHomeViewController.h"
  113. #import"MJEditViewController.h"
  114. @interfaceMJHomeViewController () <MJEditViewControllerDelegate>
  115. @end
  116. @implementationMJHomeViewController
  117. - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
  118. {
  119.    self= [superinitWithNibName:nibNameOrNil bundle:nibBundleOrNil];
  120.    if(self) {
  121.        // Custom initialization
  122.     }
  123.    returnself;
  124. }
  125. - (void)viewDidLoad
  126. {
  127.     [superviewDidLoad];
  128. // Do any additional setup after loading the view.
  129. }
  130. #pragma mark在执行segue跳转之前会调用一次(自动调用)
  131. - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
  132. {
  133.    // 1.取得终点控制器
  134.     MJEditViewController *dest = segue.destinationViewController;
  135.    
  136.    // 2.设置编辑控制器的代理
  137.     dest.delegate =self;
  138.    
  139.    // 3.传递姓名给编辑控制器
  140.     dest.name = _nameLabel.text;
  141. //    dest.nameField.text = _nameLabel.text;
  142. }
  143. #pragma mark MJEditViewController的代理方法
  144. - (void)editViewController:(MJEditViewController *)edit didSaveName:(NSString *)name
  145. {
  146.     _nameLabel.text = name;
  147. }
  148. @end
  149. // MJLoginViewController.h

    Map

  150. //
  151. //  MJLoginViewController.h
  152. //  02-导航实例-storyboard实现
  153. //
  154. //  Created by apple on 13-12-10.
  155. //  Copyright (c) 2013年itcast. All rights reserved.
  156. //
  157. #import<UIKit/UIKit.h>
  158. @interfaceMJLoginViewController : UIViewController
  159. - (IBAction)login;
  160. @property(weak,nonatomic)IBOutletUITextField *qqField;
  161. @property(weak,nonatomic)IBOutletUITextField *pwdField;
  162. @end
  163. // MJLoginViewController.m

    Map

  164. //
  165. //  MJLoginViewController.m
  166. //  02-导航实例-storyboard实现
  167. //
  168. //  Created by apple on 13-12-10.
  169. //  Copyright (c) 2013年itcast. All rights reserved.
  170. //
  171. #import"MJLoginViewController.h"
  172. @interfaceMJLoginViewController ()
  173. @end
  174. @implementationMJLoginViewController
  175. - (void)viewDidLoad
  176. {
  177.     [superviewDidLoad];
  178. // Do any additional setup after loading the view.
  179. }
  180. - (IBAction)login {
  181.    if(_qqField.text.length ==0|| _pwdField.text.length ==0)return;
  182.    
  183.    
  184.    //手动执行那根线(一根线就代表一个segue对象)
  185.     [selfperformSegueWithIdentifier:@"login2home"sender:@"789"];
  186. }
  187. - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
  188. {
  189.     NSLog(@"----------------%@", sender);
  190. }
  191. @end

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

02-导航实例-storyboard实现的更多相关文章

  1. 1210笔记//关于导航实例-QQ空间//导航实例-storyboard实现//控制器的生命周期//控制器的生命周期方法

      一.利用storyboard完成导航1.storyboard中用来跳转的每一根线 都是 一个 UIStoryboardSegue对象1> 自动跳转 (从 某个按钮 拖线到 下一个目的控制器) ...

  2. Java-Runoob-高级教程-实例-方法:02. Java 实例 – 输出数组元素

    ylbtech-Java-Runoob-高级教程-实例-方法:02. Java 实例 – 输出数组元素 1.返回顶部 1. Java 实例 - 输出数组元素  Java 实例 以下实例演示了如何通过重 ...

  3. Java-Runoob-高级教程-实例-时间处理:02. Java 实例 - 获取当前时间

    ylbtech-Java-Runoob-高级教程-实例-时间处理:02. Java 实例 - 获取当前时间 1.返回顶部 1. Java 实例 - 获取当前时间  Java 实例 以下实例演示了如何使 ...

  4. Java-Runoob-高级教程-实例-字符串:02. Java 实例 - 查找字符串最后一次出现的位置

    ylbtech-Java-Runoob-高级教程-实例-字符串:02. Java 实例 - 查找字符串最后一次出现的位置 1.返回顶部 1. Java 实例 - 查找字符串最后一次出现的位置  Jav ...

  5. Java-Runoob-高级教程-实例-数组:02. Java 实例 – 数组添加元素

    ylbtech-Java-Runoob-高级教程-实例-数组:02. Java 实例 – 数组添加元素 1.返回顶部 1. Java 实例 - 数组添加元素  Java 实例 以下实例演示了如何使用s ...

  6. Bootstrap两端对齐的导航实例

    Bootstrap两端对齐的导航,样式剥离出来代码如下: <!DOCTYPE html> <html> <head> <title>Bootstrap ...

  7. js左侧三级菜单导航实例代码

    在左侧三级菜单导航想必大家都见到过吧,它的实现过程也并不复杂,下面有个不错的示例,感兴趣的朋友可以了解下 实例代码:   <!DOCTYPE html PUBLIC "-//W3C// ...

  8. TERSUS无代码开发(笔记02)-简单实例加法

    简单实例加法 1.用户端元件(显示元件)(40个) 图标 英文名称 元件名称 使用说明 服务器端 客户端 Pane 显示块 是一个显示块,是HTML的div标签   √ Row 行 行元件中的显示元件 ...

  9. 02: DOM 实例

    1.1 Event 对象 <body> <a id="myAnchor" href="http://www.microsoft.com"> ...

随机推荐

  1. 【多线程】 Task ,async ,await

    [多线程]Task ,async ,await 一. WinForm 里经常会用到多线程, 多线程的好出就不多说了,来说说多线程比较麻烦的地方 1. UI 线程与其他线程的同步,主要是 Form 和 ...

  2. What to do when Enterprise Manager is not able to connect to the database instance (ORA-28001)

    摘自:http://dbtricks.com/?p=34 If you are trying to connect to the Oracle enterprise Manger and you ge ...

  3. 【连载】Bootstrap开发漂亮的前端界面之自定义右键菜单

    连载: 1<教你用Bootstrap开发漂亮的前端界面> 2.<Bootstrap开发漂亮的前端界面之实现原理> 网页中的自定义右键菜单越来越普遍,自定义右键菜单可以增强用户体 ...

  4. Android Studio 使用小结

    从去年(2013年5月)Google发布Android Studio 0.1.0版本,到如今已经一年多了,已经升级到0.8.6 Beta版 ,从刚开始大家报怨bug多,编译困难,到如今已经基本趋于稳定 ...

  5. Linux-Ps命令使用

    ps -ef | grep java ps aux | grep java ps aux 是用BSD的格式来显示Java进程 显示的项目有: USER        PID %CPU %MEM    ...

  6. 【page.json】配置说明

    页面.json用来对本页面的窗口表现进行配置.它只能针对window配置,并且会覆盖 app.json 的 window 中相同的配置项. { /** * 以下是页面顶部导航栏设置 **/ " ...

  7. Android 多屏幕适配 dp和px的关系

    一直以来别人经常问我,android的多屏幕适配到底是怎么弄,我也不知道如何讲解清楚,或许自己也是挺迷糊. 以下得出的结论主要是结合官方文档进行分析的https://developer.android ...

  8. RPC里面的序列化反序列化以及拆包粘包

    1.序列化(1)什么是序列化? Java的序列化是把对象转换成有序字节流的过程.以便进行网络传输或者保存到本地.(2)为什么要序列化? 当两个进程进行远程通信时,如果需要发送各种各样的数据,文本.音频 ...

  9. Delphi 7学习开发控件(续)

    继上次我们学习开发一个简单的画线控件后,基本的制作控件步骤已经清楚了,这次我们继续加深学习控件的制作.我们打开Delphi 7创建一个应用程序,拖动LineTo控件到窗体上,仔细看左边的对象设计器,可 ...

  10. Jprofiler分析WebSphere(配置WebSphereagent代理)

    一.   Windows+WebSphere+Jprofiler9 我们自己的windows机器监控本地的WebSphere,应该为服务器配置监控代理,供Jprofiler连接使用,具体步骤如下: 1 ...