02-导航实例-storyboard实现
- 源代码下载链接:
02-导航实例-storyboard实现.zip
38.5 KB // MJAboutViewController.h
- //
- // MJAboutViewController.h
- // 02-导航实例-storyboard实现
- //
- // Created by apple on 13-12-10.
- // Copyright (c) 2013年itcast. All rights reserved.
- //
- #import<UIKit/UIKit.h>
- @interfaceMJAboutViewController : UIViewController
- @end
// MJAboutViewController.m
- //
- // MJAboutViewController.m
- // 02-导航实例-storyboard实现
- //
- // Created by apple on 13-12-10.
- // Copyright (c) 2013年itcast. All rights reserved.
- //
- #import"MJAboutViewController.h"
- @interfaceMJAboutViewController ()
- @end
- @implementationMJAboutViewController
- - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
- {
- self= [superinitWithNibName:nibNameOrNil bundle:nibBundleOrNil];
- if(self) {
- // Custom initialization
- }
- returnself;
- }
- - (void)viewDidLoad
- {
- [superviewDidLoad];
- // Do any additional setup after loading the view.
- }
- - (void)didReceiveMemoryWarning
- {
- [superdidReceiveMemoryWarning];
- // Dispose of any resources that can be recreated.
- }
- @end
// MJEditViewController.h
- //
- // MJEditViewController.h
- // 02-导航实例-storyboard实现
- //
- // Created by apple on 13-12-10.
- // Copyright (c) 2013年itcast. All rights reserved.
- //
- #import<UIKit/UIKit.h>
- @classMJEditViewController;
- @protocolMJEditViewControllerDelegate <NSObject>
- @optional
- - (void)editViewController:(MJEditViewController *)edit didSaveName:(NSString *)name;
- @end
- @interfaceMJEditViewController : UIViewController
- - (IBAction)save:(id)sender;
- @property(weak,nonatomic)IBOutletUITextField *nameField;
- @property(nonatomic,weak)id<MJEditViewControllerDelegate> delegate;
- @property(nonatomic,copy) NSString *name;
- @end
// MJEditViewController.m
- //
- // MJEditViewController.m
- // 02-导航实例-storyboard实现
- //
- // Created by apple on 13-12-10.
- // Copyright (c) 2013年itcast. All rights reserved.
- //
- #import"MJEditViewController.h"
- @interfaceMJEditViewController ()
- @end
- @implementationMJEditViewController
- - (void)viewDidLoad
- {
- [superviewDidLoad];
- _nameField.text = _name;
- }
- - (IBAction)save:(id)sender {
- if([_delegate respondsToSelector:@selector(editViewController:didSaveName:)]) {
- [_delegate editViewController:selfdidSaveName:_nameField.text];
- //出栈
- [self.navigationController popViewControllerAnimated:YES];
- }
- }
- @end
// MJHomeViewController.h
- //
- // MJHomeViewController.h
- // 02-导航实例-storyboard实现
- //
- // Created by apple on 13-12-10.
- // Copyright (c) 2013年itcast. All rights reserved.
- //
- #import<UIKit/UIKit.h>
- @interfaceMJHomeViewController : UIViewController
- @property(weak,nonatomic)IBOutletUILabel *nameLabel;
- @end
// MJHomeViewController.m
- //
- // MJHomeViewController.m
- // 02-导航实例-storyboard实现
- //
- // Created by apple on 13-12-10.
- // Copyright (c) 2013年itcast. All rights reserved.
- //
- #import"MJHomeViewController.h"
- #import"MJEditViewController.h"
- @interfaceMJHomeViewController () <MJEditViewControllerDelegate>
- @end
- @implementationMJHomeViewController
- - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
- {
- self= [superinitWithNibName:nibNameOrNil bundle:nibBundleOrNil];
- if(self) {
- // Custom initialization
- }
- returnself;
- }
- - (void)viewDidLoad
- {
- [superviewDidLoad];
- // Do any additional setup after loading the view.
- }
- #pragma mark在执行segue跳转之前会调用一次(自动调用)
- - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
- {
- // 1.取得终点控制器
- MJEditViewController *dest = segue.destinationViewController;
- // 2.设置编辑控制器的代理
- dest.delegate =self;
- // 3.传递姓名给编辑控制器
- dest.name = _nameLabel.text;
- // dest.nameField.text = _nameLabel.text;
- }
- #pragma mark MJEditViewController的代理方法
- - (void)editViewController:(MJEditViewController *)edit didSaveName:(NSString *)name
- {
- _nameLabel.text = name;
- }
- @end
// MJLoginViewController.h
- //
- // MJLoginViewController.h
- // 02-导航实例-storyboard实现
- //
- // Created by apple on 13-12-10.
- // Copyright (c) 2013年itcast. All rights reserved.
- //
- #import<UIKit/UIKit.h>
- @interfaceMJLoginViewController : UIViewController
- - (IBAction)login;
- @property(weak,nonatomic)IBOutletUITextField *qqField;
- @property(weak,nonatomic)IBOutletUITextField *pwdField;
- @end
// MJLoginViewController.m
- //
- // MJLoginViewController.m
- // 02-导航实例-storyboard实现
- //
- // Created by apple on 13-12-10.
- // Copyright (c) 2013年itcast. All rights reserved.
- //
- #import"MJLoginViewController.h"
- @interfaceMJLoginViewController ()
- @end
- @implementationMJLoginViewController
- - (void)viewDidLoad
- {
- [superviewDidLoad];
- // Do any additional setup after loading the view.
- }
- - (IBAction)login {
- if(_qqField.text.length ==0|| _pwdField.text.length ==0)return;
- //手动执行那根线(一根线就代表一个segue对象)
- [selfperformSegueWithIdentifier:@"login2home"sender:@"789"];
- }
- - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
- {
- NSLog(@"----------------%@", sender);
- }
- @end
02-导航实例-storyboard实现的更多相关文章
- 1210笔记//关于导航实例-QQ空间//导航实例-storyboard实现//控制器的生命周期//控制器的生命周期方法
一.利用storyboard完成导航1.storyboard中用来跳转的每一根线 都是 一个 UIStoryboardSegue对象1> 自动跳转 (从 某个按钮 拖线到 下一个目的控制器) ...
- Java-Runoob-高级教程-实例-方法:02. Java 实例 – 输出数组元素
ylbtech-Java-Runoob-高级教程-实例-方法:02. Java 实例 – 输出数组元素 1.返回顶部 1. Java 实例 - 输出数组元素 Java 实例 以下实例演示了如何通过重 ...
- Java-Runoob-高级教程-实例-时间处理:02. Java 实例 - 获取当前时间
ylbtech-Java-Runoob-高级教程-实例-时间处理:02. Java 实例 - 获取当前时间 1.返回顶部 1. Java 实例 - 获取当前时间 Java 实例 以下实例演示了如何使 ...
- Java-Runoob-高级教程-实例-字符串:02. Java 实例 - 查找字符串最后一次出现的位置
ylbtech-Java-Runoob-高级教程-实例-字符串:02. Java 实例 - 查找字符串最后一次出现的位置 1.返回顶部 1. Java 实例 - 查找字符串最后一次出现的位置 Jav ...
- Java-Runoob-高级教程-实例-数组:02. Java 实例 – 数组添加元素
ylbtech-Java-Runoob-高级教程-实例-数组:02. Java 实例 – 数组添加元素 1.返回顶部 1. Java 实例 - 数组添加元素 Java 实例 以下实例演示了如何使用s ...
- Bootstrap两端对齐的导航实例
Bootstrap两端对齐的导航,样式剥离出来代码如下: <!DOCTYPE html> <html> <head> <title>Bootstrap ...
- js左侧三级菜单导航实例代码
在左侧三级菜单导航想必大家都见到过吧,它的实现过程也并不复杂,下面有个不错的示例,感兴趣的朋友可以了解下 实例代码: <!DOCTYPE html PUBLIC "-//W3C// ...
- TERSUS无代码开发(笔记02)-简单实例加法
简单实例加法 1.用户端元件(显示元件)(40个) 图标 英文名称 元件名称 使用说明 服务器端 客户端 Pane 显示块 是一个显示块,是HTML的div标签 √ Row 行 行元件中的显示元件 ...
- 02: DOM 实例
1.1 Event 对象 <body> <a id="myAnchor" href="http://www.microsoft.com"> ...
随机推荐
- 【多线程】 Task ,async ,await
[多线程]Task ,async ,await 一. WinForm 里经常会用到多线程, 多线程的好出就不多说了,来说说多线程比较麻烦的地方 1. UI 线程与其他线程的同步,主要是 Form 和 ...
- 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 ...
- 【连载】Bootstrap开发漂亮的前端界面之自定义右键菜单
连载: 1<教你用Bootstrap开发漂亮的前端界面> 2.<Bootstrap开发漂亮的前端界面之实现原理> 网页中的自定义右键菜单越来越普遍,自定义右键菜单可以增强用户体 ...
- Android Studio 使用小结
从去年(2013年5月)Google发布Android Studio 0.1.0版本,到如今已经一年多了,已经升级到0.8.6 Beta版 ,从刚开始大家报怨bug多,编译困难,到如今已经基本趋于稳定 ...
- Linux-Ps命令使用
ps -ef | grep java ps aux | grep java ps aux 是用BSD的格式来显示Java进程 显示的项目有: USER PID %CPU %MEM ...
- 【page.json】配置说明
页面.json用来对本页面的窗口表现进行配置.它只能针对window配置,并且会覆盖 app.json 的 window 中相同的配置项. { /** * 以下是页面顶部导航栏设置 **/ " ...
- Android 多屏幕适配 dp和px的关系
一直以来别人经常问我,android的多屏幕适配到底是怎么弄,我也不知道如何讲解清楚,或许自己也是挺迷糊. 以下得出的结论主要是结合官方文档进行分析的https://developer.android ...
- RPC里面的序列化反序列化以及拆包粘包
1.序列化(1)什么是序列化? Java的序列化是把对象转换成有序字节流的过程.以便进行网络传输或者保存到本地.(2)为什么要序列化? 当两个进程进行远程通信时,如果需要发送各种各样的数据,文本.音频 ...
- Delphi 7学习开发控件(续)
继上次我们学习开发一个简单的画线控件后,基本的制作控件步骤已经清楚了,这次我们继续加深学习控件的制作.我们打开Delphi 7创建一个应用程序,拖动LineTo控件到窗体上,仔细看左边的对象设计器,可 ...
- Jprofiler分析WebSphere(配置WebSphereagent代理)
一. Windows+WebSphere+Jprofiler9 我们自己的windows机器监控本地的WebSphere,应该为服务器配置监控代理,供Jprofiler连接使用,具体步骤如下: 1 ...