头像入版 页面跳转优化

This commit is contained in:
2025-09-11 17:07:29 +08:00
parent d6a9898c8d
commit 6bf85c6ad8
74 changed files with 4238 additions and 1070 deletions
+60
View File
@@ -17,6 +17,7 @@ import {
import { CommonConfig } from "../Config/CommonConfig";
import ResManager from "../Manager/ResManager";
import Utils from "./Utils";
import { UITransitionHelper } from "../../chat18x/utils/UITransitionHelper";
const { ccclass, property, executeInEditMode, disallowMultiple } = _decorator;
@@ -49,8 +50,67 @@ export default class GameRootUI extends Component {
showDefaultView() {
this.defaultView.active = true;
}
/**
* 带过渡动画显示默认视图
* @param transitionType 过渡动画类型:'slide_left', 'slide_right', 'fade', 'none'
* @param duration 动画时长,默认0.3秒
* @param callback 动画完成回调
*/
showDefaultViewWithTransition(
transitionType: string = "none",
duration: number = 0.1,
callback?: Function
) {
if (!this.defaultView) {
console.warn("GameRootUI: defaultView not found");
callback && callback();
return;
}
// 确保节点是激活的
this.defaultView.active = true;
if (transitionType === "none") {
callback && callback();
return;
}
console.log(
`GameRootUI: Executing ${transitionType} animation on defaultView`
);
switch (transitionType) {
case "slide_left":
console.log(
"GameRootUI: About to call slideInFromLeft, node valid:",
this.defaultView.isValid
);
UITransitionHelper.slideInFromLeft(this.defaultView, duration, () => {
console.log("GameRootUI: slideInFromLeft animation completed");
callback && callback();
});
break;
case "slide_right":
UITransitionHelper.slideInFromRight(
this.defaultView,
duration,
callback
);
break;
case "fade":
// 如果UITransitionHelper有fadeIn方法的话可以用,否则简单显示
callback && callback();
break;
default:
callback && callback();
break;
}
}
hideDefaultView(): void {
this.defaultView.active = false;
this.defaultView.position = Vec3.ZERO;
}
onLoad() {