几个页面跳转以及传值(通知传值)

A→B→C→D→A

其中A不是根目录,但是在D上还要跳转回去,并且不用alloc,这时我们可以用如下方法

[self.navigationController popToViewController: [self.navigationController.viewControllers objectAtIndex: ([self.navigationController.viewControllers count] -4)] animated:YES];

并且D要传值给A,这时通知就很好用了

通知传值(一个发送者,一堆接收者,不需要代理协议,直接通过系统的通知中心工作notificationCenter)

在传值页面

首先弄个系统通知中心

NSNotificationCenter * center = [NSNotificationCenter defaultCenter];

NSNotification * notify = [NSNotification notificationWithName:@"regisonName" object:[NSString stringWithFormat:@"%@",[self.dataArray[indexPath.row] objectForKey:@"name"]]];

//第一个参数是通知的名字,就是标示,名一个名字,以备你用这个名字去找对象 第二个参数就是你要传的值,接收要接收的值,这个值必须是对象

[center postNotification:notify];

在接收页面

//NSNotificationCenter * center = [NSNotificationCenter defaultCenter];

[[NSNotificationCenter defaultCenter] addObserver:self

selector:@selector(setRegionTitle:)

name:@"regisonName"

object:nil];

//第一个参数:将要干活的对象   第二个参数(方法名,将要干的活)   第三个参数(干活的名字,要与发送者一致)   第四个参数(系统的,暂时不用管)

- (void)setRegionTitle:(NSNotification *)notify{

NSString * object = [notify object];

[_regionButton setTitle:object forState:UIControlStateNormal];

[_regionButton setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];

}

时间: 2024-07-30 23:31:02

几个页面跳转以及传值(通知传值)的相关文章

java servlet 几种页面跳转的方法及传值

java web 页面之间传值有一下这几种方式1.form 表单传递参数2.url地址栏传递参数3.session4.cookie5.application 6.通过隐藏域传值 7.通过JavaBean进行传值 8. request.setAttribute("strRequest", strRequest); 9.response.setAttribute("name",name)来传至下一个页面 10.response.sendRedirect():在用户的浏览

iOS 页面跳转传值,属性传值,代理传值,代码块传值,单例传值,通知传值

有时候我们在页面跳转的时候回传递相应的参数,如,你想把在第一个页面的文本框里的内容显示在第二个文本框中,或者你又想把第二个文本框中的内容改变之后到第一个页面的文本框中,所有,这个时候我们就要用到页面跳转传值 1.属性传值(正向传值) 属性传值是正向传值,只可以从前面一个页面传递到第二个页面,不可以从第二个页面传递到第一个页面 2.代理传值(逆向传值) 代理传值是逆向传值 代理传值步骤 代理传值 适用于 反向传值 1.1 创建协议 及协议方法 在反向传值的页面(SecondViewControll

ASP.NET页面跳转及传值方式

ASP.NET页面跳转相关知识 一.<a>标签 1. <a href=”test.aspx”></a> 2. 这是最常见的一种转向方法; 二.HyperLink控件 1. Asp.net 服务器端控件 属性NavigateUrl指定要跳转到的Url地址 2. NavigateUrl是可以在服务器端使用代码修改,这个区别于<a> 3. 由于HyperLink本身没有事件所以要在服务器端其它事件中设置NavigateUrl 4. 代码示例: <Asp:Hy

JAVASCRIPT实现的WEB页面跳转以及页面间传值方法

在WEB页面中,我们实现页面跳转的方法通常是用LINK,BUTTON LINK ,IMG LINK等等,由用户点击某处,然后直接由浏览器帮我们跳转. 但有时候,需要当某事件触发时,我们先做一些操作,然后再跳转,这时,就要用JAVASCRIPT来实现这一跳转功能. 下面是具体的做法: 一:跳转到新页面,并且是在新窗口中打开时: 复制代码 代码如下: function gogogo() { //do someghing here... window.open("test2.html");

安卓之页面跳转与传值和按钮事件

一:新建页面 即新建Activity,new-other-Android Activity,next, 新建Activity的时候, 1:eclipse会自动创建Layout,我们发现Layout目录下会多了对应的xml文件: 2:ec会自动在AndroidManifest.xml中创建对应的activity节点: 需要注意的是,这些都是ec帮我们自动创建的,我们完全可以手动创建 class,然后让它继承自activity,然后指定layout的那个xml,然后手动创建节点完成. 二:点击按钮进

iOS——使用StroryBoard页面跳转及传值

之前在网上搜iOS的页面跳转大多都是按回以前的那种xib的形式,但鄙人是使用storyboard的.这篇就只介绍利用storyboard进行页面跳转与传值. 新建页面 iOS的程序也是使用了MVC的思想,页面文件与代码文件是分离的,这点与Android的类似.在使用storyboard的方式中,新建页面只需要在storyboard中拖入一个View Controller则可, 接下来就可以在新建的页面中添加各种控件来编辑这个新建的页面. 在新建的页面上编排各种视图控件如同在Android中编辑那

安卓---页面跳转---及页面传值

要实现从1个activity跳到另一个activity,这需要通过intent来实现.当然我们需要在Button按钮上绑定一个按钮按下的监听器,一旦该按钮监听到有按键按下,则通过intent将指定的第2个 activity触发,这样就完成了页面跳转的基本功能. 在工程中,每一个activity都对应一个xml文件,xml文件主要是控制各控件的位置和属性的. 1.先创建xml文件 activity_main.xml 1 <RelativeLayout xmlns:android="http:

[爱上Swift]十三期:使用StroryBoard页面跳转及传值

之前在网上iOS的页面跳转大多都是按回以前的那种xib的形式,但鄙人是使用storyboard的.这篇就只介绍利用storyboard进行页面跳转与传值. 新建页面 iOS的程序也是使用了MVC的思想,页面文件与代码文件是分离的,这点与Android的类似.在使用storyboard的方式中,新建页面只需要在storyboard中拖入一个View Controller则可: 接下来就可以在新建的页面中添加各种控件来编辑这个新建的页面. 在新建的页面上编排各种视图控件如同在Android中编辑那个

Intent实现页面跳转和传值

*Intent称为意图,是Android各大组件连接的桥梁 1.Activity页面跳转 Intent intent = new Intent(); intent.setClass(MainActivity.this, SecondActivity.class); MainActivity.this.startActivity(intent); 2.Activity页面跳转传值 第一种方法: 发送方: Intent intent = new Intent(); intent.putExtra("