🔥如果页面a跳转到页面b,a的viewdiddisappear方法和b的viewdidappear方法哪个先调用?(代码片段)

1-434 1-434     2022-12-26     369

关键词:

如果页面 A 跳转到 页面 B,A 的 viewDidDisappear 方法和 B 的 viewDidAppear 方法哪个先调用?
ViewController 为一级界面,BViewController 和 CViewController为两个二级界面
ViewController 为一级界面,BViewController 和 CViewController为两个二级界面
// 我在两个 VC 里面都写了如下代码:
- (void)viewWillAppear:(BOOL)animated

[super viewWillAppear:animated];
NSLog(@"%@ == %s", NSStringFromClass([self class]), __func__);

- (void)viewDidAppear:(BOOL)animated

[super viewDidAppear:animated];
NSLog(@"%@ == %s", NSStringFromClass([self class]), __func__);

- (void)viewWillDisappear:(BOOL)animated

[super viewWillDisappear:animated];
NSLog(@"%@ == %s", NSStringFromClass([self class]), __func__);

- (void)viewDidDisappear:(BOOL)animated

[super viewDidDisappear:animated];
NSLog(@"%@ == %s", NSStringFromClass([self class]), __func__);
注意:这里的跳转有两种情况
1、A push B
2017-10-26 16:38:44.748403+0800 test2[3452:1288708] ViewController == -[ViewController viewWillDisappear:]
2017-10-26 16:38:44.748551+0800 test2[3452:1288708] BViewController == -[BViewController viewWillAppear:]
2017-10-26 16:38:45.304422+0800 test2[3452:1288708] ViewController == -[ViewController viewDidDisappear:]
2017-10-26 16:38:45.304572+0800 test2[3452:1288708] BViewController == -[BViewController viewDidAppear:]
从打印结果先后顺序看:【A-->B-->A-->B】
1、调用 A 的 viewWillDisappear 方法,
2、调用 B 的 viewWillAppear 方法
3、调用 A 的 viewDidDisappear 方法
4、调用 B 的 viewDidDAppear 方法
2、A present C
2017-10-26 16:45:17.957380+0800 test2[3456:1291552] ViewController == -[ViewController viewWillDisappear:]
2017-10-26 16:45:17.957632+0800 test2[3456:1291552] CViewController == -[CViewController viewWillAppear:]
2017-10-26 16:45:18.471787+0800 test2[3456:1291552] CViewController == -[CViewController viewDidAppear:]
2017-10-26 16:45:18.472829+0800 test2[3456:1291552] ViewController == -[ViewController viewDidDisappear:]
从打印结果先后顺序看:【A-->C-->C-->A】
1、调用 A 的 viewWillDisappear 方法,
2、调用 C 的 viewWillAppear 方法
3、调用 C 的 viewDidAppear 方法
4、调用 A 的 viewDidDisappear 方法
所以,如果遇到此面试题,大家注意回答 跳转方式,不同的跳转方式执行顺序会不同!


vue实现a页面跳转到b页面,b页面返回的a页面时,保留a页面的数据(代码片段)

需求描述:A页面为搜索页,B页面为A页面的内容详情页,当我在A页面搜索完成,跳转到B页面,当从B页面返回A页面时,A页面所有数据不变解决方法:一、sessionStorage利用sessionStorage在跳转到B页面时sessio... 查看详情

vue实现a页面跳转到b页面,b页面返回的a页面时,保留a页面的数据(代码片段)

...A页面时在created()里面判断sessionStorage里面有没有对应的值如果有的话就拿sessionStorage的值来初始化,在使用sessionStorage的值时得先转化为对象,才可以使用JSON.parse转化一下在使用,因为存的就是json方法:二、keep-al... 查看详情

a页面调用了setinterval(),如何在跳转到b页面之前清除掉setinterval??

...说怎样在离开A页面前出发这个clearinterval()?追答当然呀,如果跳转了,页面都刷新了,对于页面来说,基本上相当于关了这个浏览器窗口重新开了再次打开另外的页面。 参考技术B不存在了,因为已经跳转了,两个页面用的是两... 查看详情

javascript跳转到指定页面并且到指定的tab切换窗口

JavaScript跳转到指定页面并且到指定的tab切换窗口案例的解析就是点击A页面的第一个的切换窗口的按钮跳转到B页面,再点击B页面的按钮跳转到A页面的第二个窗口,这个实现的效果有三种方法,下面的图片案例:A页面的第一个切... 查看详情

页面跳转并取到值

记录一下(从A页面跳转到B页面,并将B页面的值取到赋到A页面上显示)先来举一个栗子;)这个是A页面这是B页面通过点击A页面上的添加日志跳转到B页面,并将在B页面上添加的日志内容传到A页面上红色框位置 //这个是放在A页... 查看详情

跳转到新页面并自动触发新页面的(点击或其他)事件

...nStorage存取一个键值对,在b页面的onload中获取这个键名,如果值和在a页面存储的值一样,则触发需要的点击事件(模拟点击),触发之后销毁这个键名下的值,防止刷新的时候再次触发点击事件 a.html<aherf="b.html"id="goToPageB"... 查看详情

iframe框架如何跳转页面

...转跳转后的页面不是最顶端如何解决?这是一个内框架,如果说你要加超链接的话给你内框架分好之后,框架里面的你想要点击的那张图加<a></a>标签置顶的话就是你跳转之后的那个页面的问题啦参考技术A在页面中顶端... 查看详情

java程序中如何实现单击页面a中的按钮跳转到页面b

java程序中的jsp页面点击按钮跳转到页面b的方式如下:1.jsp页面的方式如下:<ahref="....b.jsp">跳转</a>response.sendRedirect("b.jsp")<jsp:forwardpage="b.jsp"/>2.在swing里,给button加一个监听器,然后在监听事件中打开另一个页面。在... 查看详情

实现从a页面跳转到b页面的tab选项卡的指定页上(代码片段)

需求效果实现思路在A页面跳转路由时要将activeName的值拼接在路由末尾;通过$router.push跳转并将拼接的activeName的值传递到B页面;在B页面比较activeName的值即可。核心代码A页面<divclass="topTab"><el-tabsv-model=&... 查看详情

页面间跳转的卡顿问题

页面间跳转的性能问题总结为以下三种情形:1).A页面跳转到B页面,由于B页面需要加载大量的数据,所以导致页面跳转延迟。2).A页面跳转到B页面,由于B页面需要加载大量UI元素,所以导致页面跳转延迟。3).A... 查看详情

axure中怎样让一个控件链接到两个不同的页面

...a=1,从B进入到C赋予a=2,然后在C页面点击时判断a的值,如果为1返回A,如果为2返回B。参考技术A按钮添加用例在当前页面打开链接选择返回上一次选项即可 参考技术B嗯设全局变量吧 查看详情

怎样在页面做一个链接跳转另一个页面

主要看你想实现什么样子的打开如果是新建页面跳转:window.open(url);url可以配成新页面的路径,也可以是要访问的action,再通过action跳转你要的页面。如果不是新建页面:1、可以使用表单(form)标签来跳转到action,再通过action跳转... 查看详情

关于vue中两个vue页面传数据

一个vue页面路由跳转到另一个vue页面想要获得前一个页面的数据的方法:路由传参路由传参方法适用于:1:在A页面获得数据提交给B页面/将A页面的数据给B页面2:A页面中点击按钮跳转到B页面,B页面需要使用A页面中的数据 V... 查看详情

如何实现用户点击页面的超链接,然后本网页就跳转到a页面。然后再新跳转出一个b页面。求代码

...出一段代码呢?谢谢。点击这是我找的,可以实现。但是如果页面链接多了。还要一个一个改。能不能批量个代码? 参考技术C不带你这么玩的!影响用户体验!! 参考技术D首页内容:<html><head><title>此处是首页标... 查看详情

一个页面跳转到另一个页面的tab选项卡的指定页上,该如何处理

...的偏移(位置)offset().top相对于client(页面)顶部的高度如果知道要滚动的高度的话可以直接写document.documentElement.scrollTop=100px;补充:如果知道要滚动的高度的话可以直接写document.documentElement.scrollTop=100;去掉px 参考技术B 查看详情

加载某个页面(a)时实现自动跳转到某个页面(b)

<head><title></title><scripttype="text/javascript">functionfullwin(){window.location.href="../Login/Index";returnfalse;}</script></head><bodyonload="fullwin()"&g 查看详情

从a页面带参数跳转到b页面;进行解析,并显示数据,进行编辑(代码片段)

1A页面跳转时候的地址:2parent.layer.open(3type:2,4title:‘新建草稿‘,5shadeClose:true,6shade:0.8,7scrollbar:false,8maxmin:true,9area:[‘100%‘,‘100%‘],10content:‘../../backstage/html/taskManagement/workFlowDefine/newF 查看详情

一个页面跳转到另一个页面的tab选项卡的指定页上(代码片段)

a页面是一个tab切换,b页面同样也是一个tab切换,目前想实现从a页面的tab“B”跳转的b页面的tab“B”a页面代码:<divclass="company_departmentfr"><divclass="notice_small_nav"><ahref="#2"class="company_noticenotice_nav_a">公司公告</a&g 查看详情