iOS页面跳转及数据传递(三种)
iOS页面跳转:
第一种
[self.navigationController pushViewController:subTableViewController animated:YES];
//描述:通过 NSNavigationBar 进行跳转
[self.navigationController popViewControllerAnimated:YES];
//描述:在子视图返回到上级视图
第二种
UIViewController *control = [[UIViewController alloc] init]; [self presentModalViewController:control animated:YES]; [control release];
//描述:通过事件进行跳转
[self dismissModalViewControllerAnimated:YES];
//描述:通过事件进行返回。
第三种
[self.view.window addSubview:otherview]; [self.view removeFromSuperview]
数据传递:
1)采用代理模式子viewcontroller设计 代理协议,定义协议接口,父viewcontroller 实现协议接口,实现子viewcontroller 退出时将相关数据更新到父视图。
2)采用ios的消息机制 父viewcontroller注册消息,子viewcontroller 发送消息,触发父viewcontroller的消息处理。
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(setData:) name:kNotificationMessage object:nil];
//注册监听,其中setData用来处理消息
[[NSNotificationCenter defaultCenter] postNotificationName:kNotificationMessage object:self userInfo:infoDict];
//发送消息
3)采用database做为数据中间的存储媒介,子viewcontroller将状态数据存入DB,父viewcontroller从DB获取数据更新view.
4)采用ios的NSDefault 存储
5)通过AppDelegate 中定义全局变量实现中间数据的存储。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持我们!
相关推荐
-
IOS 应用之间的跳转和数据传递详解
说明:本文介绍app如何打开另一个app,并且传递数据. 一.简单说明 新建两个应用,分别为应用A和应用B. 实现要求:在appA的页面中点击对应的按钮,能够打开appB这个应用. 1.新建两个应用,分别为A和B. 142354418874108[1].png 150002248248878[1].png 2.设置应用B的url. 150005160123679[1].png 3.在应用A中编写打开app的代码 150007446066083[1].png 点击之后,会跳转到新的控制器. 注意:
-
iOS开发中ViewController的页面跳转和弹出模态
ViewController 页面跳转 从一个Controller跳转到另一个Controller时,一般有以下2种: 1.利用UINavigationController,调用pushViewController,进行跳转:这种采用压栈和出栈的方式,进行Controller的管理.调用popViewControllerAnimated方法可以返回. 复制代码 代码如下: PickImageViewController *ickImageViewController = [[PickImageV
-
iOS实现两个控制器之间数据的双向传递
本文为大家分享了iOS控制器之间数据的双向传递,供大家参考,具体内容如下 首先,有两个控制器,分别为控制器A.控制器B. A->B:数据由控制器A传向控制器B,这叫做数据的顺传:数据由控制器B传向控制器A,这叫做逆传. 顺传:一般通过创建目标控制器对象,将数据赋值给对象的成员来完成: 逆传:一般使用代理来实现,其中控制器A是控制器B的代理(控制器A监听控制器B,控制器B通知控制器A). 下面是博主写的简单实现了两个控制间实现数据的双向传递的app的demo: 1.这是界面设计: FirstVie
-
iOS应用开发中实现页面跳转的简单方法笔记
作为新手写的笔记,方便自己记忆: 从android转过来iOS的,对于页面的跳转,找了很多资料,现在记录一下页面跳转的方法. 1.用navigationController 2.直接跳(刚刚在网上找到的,不太熟,有错莫怪) 1.建一个RootViewController,在delegate.h 复制代码 代码如下: @property (strong, nonatomic) UIViewController *viewController; @property (strong, nonatomi
-
iOS页面跳转及数据传递(三种)
iOS页面跳转: 第一种 [self.navigationController pushViewController:subTableViewController animated:YES]; //描述:通过 NSNavigationBar 进行跳转 [self.navigationController popViewControllerAnimated:YES]; //描述:在子视图返回到上级视图 第二种 UIViewController *control = [[UIViewControl
-
微信小程序 页面跳转和数据传递实例详解
微信小程序 页面跳转和数据传递 1.先导 在Android中,我们Activity和Fragment都有栈的概念在里面,微信小程序页面也有栈的概念在里面.微信小程序页面跳转有四种方式: 1.wx.navigateTo(OBJECT): 2.wx.redirectTo(OBJECT): 3.wx.switchTab(OBJECT): 4.wx.navigateBack(OBJECT) 5.使用实现对应的跳转功能: 分析: 其中navigateTo是将原来的页面保存在页面栈中,在跳入到下一个页面的时
-
微信小程序 页面跳转及数据传递详解
微信小程序 页面跳转及数据传递详解 类似 Android 的 Intent 传值,微信小程序也一样可以传值: 例如:wxml 中写了一个函数跳转: <view class="itemWeight" catchtap="jumpToOverMissionList"> <view class="textStatus">已完成任务</view> <view class="containVertical
-
小程序实现页面跳转与数据传递方案
目录 页面跳转和数据传递 wx的API跳转 navigator组件(了解) 总结 页面跳转和数据传递 界面的跳转有两种方式:通过navigator组件 和 通过wx的API跳转 这里我们先以wx的API作为讲解: wx的API跳转 上面API中, 我们最常用的就是wx.navigateTo和wx.navigateBack wx.navigateTo(Object object) 保留当前页面,跳转到应用内的某个页面: 但是不能跳到 tabbar 页面: 参数属性 属性 类型 默认值 必填 说明
-
iOS开发中UIWebView的加载本地数据的三种方式
UIWebView是IOS内置的浏览器,可以浏览网页,打开文档 html/htm pdf docx txt等格式的文件. safari浏览器就是通过UIWebView做的. 服务器将MIME的标识符等放入传送的数据中告诉浏览器使用那种插件读取相关文件. uiwebview加载各种本地文件(通过loadData方法): UIWebView加载内容的三种方式: 1 加载本地数据文件 指定文件的MIMEType 编码格式使用@"UTF-8" 2加载html字符串(可以加载全部或者部分html
-
jQuery使用JSONP实现跨域获取数据的三种方法详解
本文实例讲述了jQuery使用JSONP实现跨域获取数据的三种方法.分享给大家供大家参考,具体如下: 第一种方法是在ajax函数中设置dataType为'jsonp' $.ajax({ dataType: 'jsonp', url: 'http://www.a.com/user?id=123', success: function(data){ //处理data数据 } }); 第二种方法是利用getJSON来实现,只要在地址中加上callback=?参数即可 $.getJSON('http:/
-
iOS中从网络获取数据的几种方法的比较
IOS中获取网络数据一般有三种:1.NSURLCondition(已过时) 2.NSURLSession 3.三方库AFNetWorking NSURLSession 是苹果对NSULRCondition的替代品,NSURLSession比NSURLCondition多了 1.可配置的数据信息NSURLSessionConfiguration,NSURLSessionConfiguration使你可以设置你要请求的数据,通常的设置如缓存,也可以使用默认的配置信息defaultCongurati
-
vue请求数据的三种方式
请求数据的方式: vue-resource 官方提供的 vue的一个插件 axios fetch-jsonp 一,vue-resource请求数据 介绍:vue-resource请求数据方式是官方提供的一个插件 使用步骤: 1.安装vue-resource模块 cnpm install vue-resource --save 加--save是为了在package.json中引用,表示在生产环境中使用.因为我们在日常开发中,如果我们要打包代码给其他人或者上传到github,又或者要发布代码时,pa
-
防止MySQL重复插入数据的三种方法
新建表格 CREATE TABLE `person` ( `id` int NOT NULL COMMENT '主键', `name` varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT '姓名', `age` int NULL DEFAULT NULL COMMENT '年龄', `address` varchar(512) CHARACTER SET utf8 COLLATE utf8_bin N
随机推荐
- 深入理解JavaScript中的块级作用域、私有变量与模块模式
- Java创建数组的几种方式总结
- springboot集成mqtt的实践开发
- ASP.NET实现URL映射的方法
- php mysql实现mysql_select_db选择数据库
- ThinkPHP模板判断输出Present标签用法详解
- 理解java和python类变量以及类的成员变量
- 使用travis-ci如何持续部署node.js应用详解
- xhEditor编辑器入门基础
- asp中去除内容HTML标签的三个function函数
- Java中String类(字符串操作)的10个常见问题和解决方法
- java操作mongodb基础(查询 排序 输出list)
- 深入浅析MySQL COLUMNS分区
- java 获取当前路径下的所有xml文档的方法
- EasyUI Datebox 日期验证之开始日期小于结束时间
- jQuery实现的多选框多级联动插件
- jQuery+CSS3实现仿花瓣网固定顶部位置带悬浮效果的导航菜单
- 详解linux 下安装软件tar.gz, rpm,deb的方法
- C#中无边框窗体移动的简单实例
- DataTable数据导出成Excel文件的小例子