网易我的世界论坛

标题: 关于UI里的PushScreen和PopScreen [打印本页]

作者: 南山陶然客    时间: 2021-10-26 09:39
标题: 关于UI里的PushScreen和PopScreen
有个疑问,那就是PushScreen含参数,而PopScreen没有参数,那么问题来了,我理解PopScreen就是把
栈顶的screen给pop掉,那么如何保证我pop掉的screen是我之前push的screen?会不会多Mod情况下存
在bug的可能?



作者: sevenstars    时间: 2021-10-29 17:07
本帖最后由 sevenstars 于 2021-10-29 17:10 编辑

保证就是当你PushScreen的时候,其他人的UI都会被完全隐藏。应该不会有人做类似于到mc晚上就Push的事吧
作者: 南山陶然客    时间: 2021-10-31 12:07
sevenstars 发表于 2021-10-29 17:07
保证就是当你PushScreen的时候,其他人的UI都会被完全隐藏。应该不会有人做类似于到mc晚上就Push的事吧

这不好说。以堆栈管理的方式,当你Push的时候,肯定是把其它UI隐藏了,但确实不能保证你的UI此时不会被其它Mod的UI给Push掉,此时你再Pop,那就混乱了。
因为Push和Pop都是clientApi的接口,问题就出在这儿,clientApi并没有ScreenNode的句柄,所以建议push和pop都放在ScreenNode里调用
作者: sevenstars    时间: 2021-11-7 21:45
南山陶然客 发表于 2021-10-31 12:07
这不好说。以堆栈管理的方式,当你Push的时候,肯定是把其它UI隐藏了,但确实不能保证你的UI此时不会被其 ...

我推测这个栈的空间只有1,你可以自己试试当已经Push了一个界面的时候,能不能再Push一个




欢迎光临 网易我的世界论坛 (https://mc.netease.com/) Powered by Discuz! X3.3