export default class ToastManager{
static lastTime:number = 0;//最后一个toast时间戳
static defaultStyle = {
fontSize:24,
color:"#ffffff",
stroke:4,
strokeColor:"#6e37c5",
align:"center",
wordWrap:true,
alpha:0,
}
static showToast(text:string,textStyle:any = null){
let self = this;
let now = (new Date()).getTime();
let delay = Math.max(150 - (now - self.lastTime),0);
if(!textStyle){
textStyle = self.defaultStyle;
}else{
for(let key in self.defaultStyle){
textStyle[key] = textStyle[key]||self.defaultStyle[key];
}
}
let toast = new Toast(text,textStyle,delay);
toast.pos((Laya.stage.width - toast.width)/2,Laya.stage.height/2);
Laya.stage.addChild(toast);
self.lastTime = now;
}
}
import BText from "../display/BText";
export default class Toast extends Laya.Sprite{
constructor(text:string,textStyle:any,delay:number = 0){
super();
const self = this;
self.mouseEnabled = false;
let toastText:BText = new BText(textStyle);
toastText.width = Laya.stage.width-100;
toastText.text = text;
if(toastText.textWidth < toastText.width){
toastText.width = toastText.textWidth;
}
toastText.height = toastText.textHeight;
self.size(toastText.width,toastText.height);
self.addChild(toastText);
Laya.Tween.to(toastText,{y:-200},1000,Laya.Ease.linearNone,null,delay);
Laya.Tween.to(toastText,{alpha:1},200,Laya.Ease.linearNone,Laya.Handler.create(self,function(){
Laya.Tween.to(toastText,{alpha:0},200,Laya.Ease.linearNone,Laya.Handler.create(self,function(){
self.destroy(true);
}),600);
}),delay);
}
}
*/
export default class BText extends Laya.Text{
constructor(style:any = null){
super();
let self = this;
if(style){
for(let prop in style){
self[prop] = style[prop]
}
}
}
}