first commit
This commit is contained in:
34
assets/res-native/setting/SwitchLang.ts
Normal file
34
assets/res-native/setting/SwitchLang.ts
Normal file
@@ -0,0 +1,34 @@
|
||||
import { _decorator, Component, Label, Sprite, SpriteFrame } from "cc";
|
||||
import { app } from "../../app/app";
|
||||
import { Tools } from "../tools/Tools";
|
||||
import { LANG_SET } from "./LangSet";
|
||||
const { ccclass, property } = _decorator;
|
||||
@ccclass('SwitchLang')
|
||||
|
||||
export class SwitchLang extends Component {
|
||||
@property(String) lab_lang: string = "";
|
||||
|
||||
@property(SpriteFrame) spr_lang : SpriteFrame[] = [];
|
||||
|
||||
protected onLoad(): void {
|
||||
this.updateLab();
|
||||
app.manager.event.on("LangChanged", this.updateLab, this);
|
||||
}
|
||||
|
||||
protected onDestroy(): void {
|
||||
app?.manager.event?.off("LangChanged", this.updateLab, this);
|
||||
}
|
||||
|
||||
updateLab(){
|
||||
let lab = this.getComponent(Label)
|
||||
if (lab != null) {
|
||||
this.getComponent(Label).string = Tools.GetLocalized(this.lab_lang)
|
||||
};
|
||||
|
||||
let sprite = this.getComponent(Sprite)
|
||||
if (sprite != null) {
|
||||
if (this.spr_lang && this.spr_lang[LANG_SET.langIndex])
|
||||
this.getComponent(Sprite).spriteFrame = this.spr_lang[LANG_SET.langIndex]
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user