多次页面跳转后pop回主界面的问题

最近写代码的时候出了点BUG, 查阅资料后终于解决了. 问题原因大概是: 项目中所有的viewController都是继承自一个封装好的viewController. navigationbar, navigationbaritem所有的方法都是大神自己写的.所以pop回主界面不知道怎么的会跳转到登录界面, 下面说我解决的方法:

比如先从A界面跳到B界面,再从B界面跳到C界面,最后需要从C界面直接跳转到A界面,在这里我讲讲解直接从C界面跳转到A界面的方法。在iOS开发中,我们通常用得最多的页面跳转方式就是通过NavigationBar的push和pop跳转方法,下面这种跳转方法也是基于NavigationBar的跳转方法。因为NavigationBar跳转时候实际是将各个页面放在一个栈里面,需要往上层跳转时候只需要遍历一遍栈,找到自己想跳转的那个页面。

HomeViewController *homeVC = [[HomeViewController alloc] init];
                  UIViewController *target = nil;
                  for (UIViewController * controller in self.navigationController.viewControllers) {
                      if ([controller isKindOfClass:[homeVC class]]) {
                          target = controller;
                      }
                  }
                  if (target) {
                      [self.navigationController popToViewController:target animated:YES];
                  }
时间: 2024-09-30 11:32:24

多次页面跳转后pop回主界面的问题的相关文章

TP3.2.3 页面跳转后 Cookie 失效 —— 解决方案

一.问题描述 接手一个项目,使用ThinkPhp3.2.3,在线上环境( Centos7.4 + Nginx1.14 + MySQL5.7 + PHP7.2.4 )运行没有问题, 在本地环境( phpStudy 集成开发环境 Windows7 (64位) + Apache + MySQL5.7.17 + PHP7.2.10 )部署项目时,发现Cookie 页面跳转无效. 具体表现为:登录页面使用 cookie 保存用户信息,在登录页面打印 cookie 信息,发现 Cookie 信息成功保存,但

关于使用struts2时子窗体页面跳转后在父窗体打开的问题以及Session过期后的页面跳转问题

问题1:传统的系统界面,iframe了三个页面,上,左,右,用户点击注销的按钮在上面得top.jsp里面,方法:<a href="../adminAction/admin_logout.action">退出系统</a>退出之后你会发现,只是刷新了top.jsp上面那个iframe,其他两个还在,如何解决? 解决办法: target="_top",就就是它.加多这个变成:<a href="../adminAction/admin

jquery mobile页面跳转后,JS无效的原因及解决方案

最近在做个项目,用到jquery mobile,很陌生对他,问题一个个的来,那就要一个个解决,找了一天这个问题,放可明白:首先明白jqm里面页面跳转默认都是通过ajax请求的,必须重新刷新页面js方可有效,也就是js没有起作用,并不是js本身的问题,下面说说解决方法:在使用jQuery Mobile进行Web开发中,当页面跳转时(pageA => pageB),在pageB中引用的JS并未成功运行.因为,JQM并为将整个页面加载到当前的dom中,仅将data-role="page"

jquery mobile页面跳转后,必须重新刷新页面js方可有效

最近在做个项目,用到jquery mobile,很陌生对他,问题一个个的来,那就要一个个解决,找了一天这个问题,放可明白:首先明白jqm里面页面跳转默认都是通过ajax请求的,必须重新刷新页面js方可有效,也就是js没有起作用,并不是js本身的问题,下面说说解决方法:在使用jQuery Mobile进行Web开发中,当页面跳转时(pageA => pageB),在pageB中引用的JS并未成功运行.因为,JQM并为将整个页面加载到当前的dom中,仅将data-role="page"

.net MVC 页面页面跳转后提示消息实现办法

mvc在RedirectToAction之后,会清理掉ViewData中的所有数据,因此通过ViewData给下一个页面传递提示消息不太好,如果是通过参数方式传递,刷新跳转后的页面时,消息还会再次提示,也不太友好. 因此,得找个别的路子来实现此功能. 查阅一堆资料后得知,此类效果的实现大概有以下一个思路: 1.存到Session 2.存到Cookie 3.传参数 4.TempData 前三种都是非常容易就可以想到的,第四种是微软MVC推荐的实现方式.TempData是放到Session里面的,只

ionic2 页面跳转 push() pop() NavController,navParams

新建页面http://zyyapp.com/post/185.html Ionic 2之页面堆栈 :http://blog.csdn.net/u010730126/article/details/63254988 还记得Ionic 1中的state和router吗?他们两兄弟配合起来完成页面导航的功能,虽然它们使用起来并不算复杂## 标题 ##,概念也很清晰,不过当页面增多.state嵌套等问题出现后复杂度也会增加,当复杂程度到达一定程度时工程必然难以维护和理解.而Ionic 2效仿原生页面堆栈

页面跳转后样式丢失js失效

  问题描述: 用ajax跳转的时候,从a.html跳转到b.html后,b.html的css以及js都失效了. 解决办法: 将当前页面需要用到的css以及js放在<page>div内. 原理: 由于jqm默认的ajax跳转的时候,只会把b.html中<page>内的内容加载进dom,而<page>外的代码都不会加载,所以导致在<page>外的js和css都失效了.还要设置data-ajax=false

黄聪:jquery mobile通过a标签页面跳转后,样式丢失、js失效的解决方法

问题描述: 用ajax跳转的时候,从a.html跳转到b.html后,b.html的css以及js都失效了. 解决办法1: 将所有的css以及js全部放在div内. 原理: 由于jqm的ajax跳转的时候,只会把b.html中内的内容加载进dom,而外的代码都不会加载,所以导致在外的js和css都失效了. 解决办法1: 在header设置全局属性. <script>$.mobile.ajaxEnabled = false;</script> 原理: 全局禁止jqm使用ajax

JS页面跳转后,返回到该页面时,该页面的全局变量的值是怎么变化的?

前奏 window.location.reload();history.back(-1);history.go(1);多种页面刷新跳转详解 问题 待续----