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
Map
- //
- // 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
Map
- //
- // 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
Map
- //
- // 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
Map
- //
- // 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
Map
- //
- // 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
Map
- //
- // 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
Map
- //
- // 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
https://www.evernote.com/shard/s227/sh/5fea7b10-adcf-4efe-b616-493de3f9dde3/fdc9ac0c31864734d2ac3d7854795349
转载于:https://www.cnblogs.com/ChenYilong/p/3490892.html
02-导航实例-storyboard实现相关推荐
- vue两个html入口路由串了,vue-router路由与页面间导航实例解析
vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,适合用于构建单页面应用.vue的单页面应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来.传统的页面应 ...
- 抽屉式(菜单)导航实例模板,设计师喜欢哪款?
抽屉式导航 抽屉式导航也叫汉堡式菜单,一般出现在APP页面的左右两侧.用户停留在可以唤出导航的页面时,用手指向左右侧滑动或点击左右上角的图标显示导航页面. 菜单 - 导航UI移动版模板 菜单 - 导航 ...
- BIEE叙述图导航实例
2019独角兽企业重金招聘Python工程师标准>>> 今天有网友问到怎样在叙述视图中进行导航? 叙述图不同于表格,相要在其中进行导航的话只能借用GO URL或者javacript函 ...
- php动态js导航视频教程,JQ实现动画导航实例代码
1.手风琴式导航,既可以适用于移动端也可使用与PC端 *{ list-style: none; padding: 0; margin: 0; } ul{ display: none; } h3{ ba ...
- 02: DOM 实例
1.1 Event 对象 <body><a id="myAnchor" href="http://www.microsoft.com"> ...
- 43个实例xHTML+CSS(DIV+CSS)网页及导航布局教程
在中国,很多前端javascript:;" onClick="javascript:tagshow(event, '%BF%AA%B7%A2');" target=&qu ...
- 地址设置nginx负载均衡_nginx负载均衡配置实例
什么是负载均衡? 负载均衡主要通过专门的硬件设备或者通过软件算法实现.通过硬件设备实现的负载均衡效果好.效率高.性能稳定,但是成本比较高.通过软件实现的负载均衡主要依赖于均衡算法的选择和程序的健壮性. ...
- CVPR 2021 | 双图层实例分割,大幅提升遮挡处理性能
" 双图层实例分割 物体的互相遮挡在日常生活中普遍存在,严重的遮挡易带来易混淆的遮挡边界及非连续自然的物体形状,从而导致当前已有的检测及分割等的算法性能大幅下降.本文通过将图像建模为两个重叠 ...
- ExtJS 2.0官方实例目录
http://extjs.org.cn/node/81 将会按照ExtJs2.02的例子的分类来完成,并保证所有的例子均可以运行. 教程将会在2008-04-21开始,每周更新.更新后的颜色将会变成蓝 ...
最新文章
- 官方文档,才是正途-docker-compose
- vsphere服务器虚拟化流程,VMware vSphere服务器虚拟化实验
- 反汇编RETN 0x0c的理解
- 同步异步 阻塞非阻塞
- BZOJ 1071组队
- python 梯度提升树_机器学习:梯度提升算法|python与r语言代码实现
- python自动化框架(unnitest+selenium+htmlreport)
- 做了十年的功能测试,下一步该晋升测试开发还是转行软件开发?
- 知道ip地址如何进入电脑_如何防止局域网电脑IP地址冲突
- [ASM] 基础概念
- 知网免费下载期刊文献
- 计算机化自适应测验 英语,计算机化自适应测验选题策略研究
- HDOJ 6608 Fansblog
- 秒表计时器(Timeout 实现 Interval)
- 分析listen状态
- 小白组装电脑详细教程
- Spring IOC 和 DI原理 (面试必备)
- 程序员博客遭攻击,炸出华为云前员工吐槽自家业务;谷歌宣布推出第二个版本 Git 协议,带来显著的性能提升...
- python刷今日头条阅读量_用python3.5逛看今日头条
- 财务分析与决策:同型分析
热门文章
- scala typetag java,scala – 从类型中获取TypeTag?
- Struts工作原理
- mybatis的批量操作
- 040_Tooltip文字提示
- 048_Unicode对照表十四
- 089_DOM节点动态创建、添加和删除
- 006-SDK框架之LYWSDKInterfaceProtocol.h
- sublime python linux 安装教程,Sublime Text Windows及Linux Python环境搭建
- 第五篇:Mysql的数据备份与恢复---------
- jqprintsetup已经安装还会提示_英雄联盟PBE服务器安装指南 抢先体验新模式“云顶之弈”不用等...