【UE4】全局Widget
由于UE4在默认情况下会OpenLevel会将当前Level创建的Widget从ViewportClient中移除,所以默认的UserWidget会随着切换关切而消失。
有的时候我们可能需要使用一个全局的按钮什么的,所以就需要Widget不随切换关切而从ViewprotClient中移除,而是在我们想要移除的时候才移除,做一个全局的Widget其实也很简单,我只需要稍稍的重写一下UserWidget就好了。
首先创建一个自己的UserWidget子类,然后重写OnLevelRemovedFromWorld函数:
1 |
|
1 |
|
- OnLevelRemovedFromWorld函数就是UserWidget往FWorldDelegates::LevelRemovedFromWorld代理中添加的函数,FWorldDelegates::LevelRemovedFromWorld代理会在Level从World中移除时调用;
- RemoveGlobalWidget是自定义的函数,用于触发从ViewportClient中移除Widget。
然后创建一个GlobalWidget的蓝图类:
然后我们就可看一下效果了:
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!