您的位置:首页 > 教育 > 培训 > 深圳正规做网站的公司_软文推广营销_网站ip查询_百度指数搜索热度大学

深圳正规做网站的公司_软文推广营销_网站ip查询_百度指数搜索热度大学

2025/5/24 9:41:49 来源:https://blog.csdn.net/weixin_48639457/article/details/146946142  浏览:    关键词:深圳正规做网站的公司_软文推广营销_网站ip查询_百度指数搜索热度大学
深圳正规做网站的公司_软文推广营销_网站ip查询_百度指数搜索热度大学
import promptAction from '@ohos.promptAction';/*** TODO Toast默认样式参数* author: 鸿蒙布道师* since: 2025/04/02*/
export class ToastConfig {duration: number = 2000; // 显示时长(1500ms-10000ms)duration_short: number = 1500; // 显示时长(1500ms)duration_long: number = 10000; // 显示时长(10000ms)showMode: promptAction.ToastShowMode = promptAction.ToastShowMode.DEFAULT; // 是否显示在应用之上alignment?: Alignment; // 对齐方式,默认值:undefined,默认底部偏上位置bottom: string | number = '80vp'; // 设置弹窗底部边框距离导航条的高度offset: Offset = { dx: 0, dy: 0 }; // 在对齐方式上的偏移,默认值:{dx:0, dy:0}textColor: ResourceColor = Color.White; // 文本提示框文本颜色,默认值:Color.BlackbackgroundColor: ResourceColor = '#CC000000'; // 文本提示框背板颜色,默认值:Color.TransparentbackgroundBlurStyle: BlurStyle = BlurStyle.NONE; // 文本提示框背板模糊材质,默认值:BlurStyle.COMPONENT_ULTRA_THICKshadow: ShadowOptions | ShadowStyle = ShadowStyle.OUTER_DEFAULT_MD; // 文本提示框背板阴影,默认值:ShadowStyle.OUTER_DEFAULT_MD
}/*** TODO Toast基本参数类* author: 鸿蒙布道师* since: 2025/04/02*/
export class ToastOptions {duration?: number; // 显示时长(1500ms-10000ms)showMode?: promptAction.ToastShowMode; // 是否显示在应用之上alignment?: Alignment; // 对齐方式,默认值:undefined,默认底部偏上位置bottom?: string | number; // 设置弹窗底部边框距离导航条的高度offset?: Offset; // 在对齐方式上的偏移,默认值:{dx:0, dy:0}textColor?: ResourceColor; // 文本提示框文本颜色,默认值:Color.BlackbackgroundColor?: ResourceColor; // 文本提示框背板颜色,默认值:Color.TransparentbackgroundBlurStyle?: BlurStyle; // 文本提示框背板模糊材质,默认值:BlurStyle.COMPONENT_ULTRA_THICKshadow?: ShadowOptions | ShadowStyle; // 文本提示框背板阴影,默认值:ShadowStyle.OUTER_DEFAULT_MD
}/*** TODO 土司工具类* author: 鸿蒙布道师* since: 2025/04/02*/
export class ToastUtil {private static defaultConfig: ToastConfig = new ToastConfig(); // 默认样式/*** 设置默认统一样式* @param configs 回调函数,用于修改默认配置*/static setDefaultConfig(configs: (config: ToastConfig) => void): void {configs(ToastUtil.defaultConfig);}/*** 弹出土司,默认时长为2s,距离底部默认为80vp* @param message 提示消息* @param options 可选参数(显示时长、距离屏幕底部的位置、是否显示在应用之上等)*/static showToast(message: string | Resource, options: ToastOptions = {}): void {ToastUtil.show(message, options, 0);}/*** 弹出土司,时长为1.5s,距离底部默认为80vp* @param message 提示消息* @param options 可选参数(距离屏幕底部的位置、是否显示在应用之上等)*/static showShort(message: string | Resource, options: ToastOptions = {}): void {ToastUtil.show(message, options, 1);}/*** 弹出土司,时长为10s,距离底部默认为80vp* @param message 提示消息* @param options 可选参数(距离屏幕底部的位置、是否显示在应用之上等)*/static showLong(message: string | Resource, options: ToastOptions = {}): void {ToastUtil.show(message, options, 2);}/*** 内部方法:统一处理 Toast 的显示逻辑* @param message 提示消息* @param options 可选参数* @param type 类型标识(0: 默认,1: 短时间,2: 长时间)*/private static show(message: string | Resource, options: ToastOptions, type: number): void {if (!message || (typeof message === 'string' && message.trim() === '')) {console.warn('ToastUtil: Empty or invalid message provided.');return;}const finalOptions = ToastUtil.initToastDefault(options, type);promptAction.showToast({message,duration: finalOptions.duration,showMode: finalOptions.showMode,alignment: finalOptions.alignment,bottom: finalOptions.bottom,offset: finalOptions.offset,textColor: finalOptions.textColor,backgroundColor: finalOptions.backgroundColor,backgroundBlurStyle: finalOptions.backgroundBlurStyle,shadow: finalOptions.shadow,});}/*** 初始化 ToastOptions 参数* @param options 用户传入的选项* @param type 类型标识(0: 默认,1: 短时间,2: 长时间)* @returns 合并后的完整选项*/private static initToastDefault(options: ToastOptions, type: number): ToastOptions {const defaultDuration =type === 1 ? ToastUtil.defaultConfig.duration_short :type === 2 ? ToastUtil.defaultConfig.duration_long :ToastUtil.defaultConfig.duration;return {duration: options.duration ?? defaultDuration,showMode: options.showMode ?? ToastUtil.defaultConfig.showMode,alignment: options.alignment ?? ToastUtil.defaultConfig.alignment,bottom: options.bottom ?? ToastUtil.defaultConfig.bottom,offset: options.offset ?? ToastUtil.defaultConfig.offset,textColor: options.textColor ?? ToastUtil.defaultConfig.textColor,backgroundColor: options.backgroundColor ?? ToastUtil.defaultConfig.backgroundColor,backgroundBlurStyle: options.backgroundBlurStyle ?? ToastUtil.defaultConfig.backgroundBlurStyle,shadow: options.shadow ?? ToastUtil.defaultConfig.shadow,};}
}

代码如下:
 

import promptAction from '@ohos.promptAction';/*** TODO Toast默认样式参数* author: 鸿蒙布道师* since: 2025/04/02*/
export class ToastConfig {duration: number = 2000; // 显示时长(1500ms-10000ms)duration_short: number = 1500; // 显示时长(1500ms)duration_long: number = 10000; // 显示时长(10000ms)showMode: promptAction.ToastShowMode = promptAction.ToastShowMode.DEFAULT; // 是否显示在应用之上alignment?: Alignment; // 对齐方式,默认值:undefined,默认底部偏上位置bottom: string | number = '80vp'; // 设置弹窗底部边框距离导航条的高度offset: Offset = { dx: 0, dy: 0 }; // 在对齐方式上的偏移,默认值:{dx:0, dy:0}textColor: ResourceColor = Color.White; // 文本提示框文本颜色,默认值:Color.BlackbackgroundColor: ResourceColor = '#CC000000'; // 文本提示框背板颜色,默认值:Color.TransparentbackgroundBlurStyle: BlurStyle = BlurStyle.NONE; // 文本提示框背板模糊材质,默认值:BlurStyle.COMPONENT_ULTRA_THICKshadow: ShadowOptions | ShadowStyle = ShadowStyle.OUTER_DEFAULT_MD; // 文本提示框背板阴影,默认值:ShadowStyle.OUTER_DEFAULT_MD
}/*** TODO Toast基本参数类* author: 鸿蒙布道师* since: 2025/04/02*/
export class ToastOptions {duration?: number; // 显示时长(1500ms-10000ms)showMode?: promptAction.ToastShowMode; // 是否显示在应用之上alignment?: Alignment; // 对齐方式,默认值:undefined,默认底部偏上位置bottom?: string | number; // 设置弹窗底部边框距离导航条的高度offset?: Offset; // 在对齐方式上的偏移,默认值:{dx:0, dy:0}textColor?: ResourceColor; // 文本提示框文本颜色,默认值:Color.BlackbackgroundColor?: ResourceColor; // 文本提示框背板颜色,默认值:Color.TransparentbackgroundBlurStyle?: BlurStyle; // 文本提示框背板模糊材质,默认值:BlurStyle.COMPONENT_ULTRA_THICKshadow?: ShadowOptions | ShadowStyle; // 文本提示框背板阴影,默认值:ShadowStyle.OUTER_DEFAULT_MD
}/*** TODO 土司工具类* author: 鸿蒙布道师* since: 2025/04/02*/
export class ToastUtil {private static defaultConfig: ToastConfig = new ToastConfig(); // 默认样式/*** 设置默认统一样式* @param configs 回调函数,用于修改默认配置*/static setDefaultConfig(configs: (config: ToastConfig) => void): void {configs(ToastUtil.defaultConfig);}/*** 弹出土司,默认时长为2s,距离底部默认为80vp* @param message 提示消息* @param options 可选参数(显示时长、距离屏幕底部的位置、是否显示在应用之上等)*/static showToast(message: string | Resource, options: ToastOptions = {}): void {ToastUtil.show(message, options, 0);}/*** 弹出土司,时长为1.5s,距离底部默认为80vp* @param message 提示消息* @param options 可选参数(距离屏幕底部的位置、是否显示在应用之上等)*/static showShort(message: string | Resource, options: ToastOptions = {}): void {ToastUtil.show(message, options, 1);}/*** 弹出土司,时长为10s,距离底部默认为80vp* @param message 提示消息* @param options 可选参数(距离屏幕底部的位置、是否显示在应用之上等)*/static showLong(message: string | Resource, options: ToastOptions = {}): void {ToastUtil.show(message, options, 2);}/*** 内部方法:统一处理 Toast 的显示逻辑* @param message 提示消息* @param options 可选参数* @param type 类型标识(0: 默认,1: 短时间,2: 长时间)*/private static show(message: string | Resource, options: ToastOptions, type: number): void {if (!message || (typeof message === 'string' && message.trim() === '')) {console.warn('ToastUtil: Empty or invalid message provided.');return;}const finalOptions = ToastUtil.initToastDefault(options, type);promptAction.showToast({message,duration: finalOptions.duration,showMode: finalOptions.showMode,alignment: finalOptions.alignment,bottom: finalOptions.bottom,offset: finalOptions.offset,textColor: finalOptions.textColor,backgroundColor: finalOptions.backgroundColor,backgroundBlurStyle: finalOptions.backgroundBlurStyle,shadow: finalOptions.shadow,});}/*** 初始化 ToastOptions 参数* @param options 用户传入的选项* @param type 类型标识(0: 默认,1: 短时间,2: 长时间)* @returns 合并后的完整选项*/private static initToastDefault(options: ToastOptions, type: number): ToastOptions {const defaultDuration =type === 1 ? ToastUtil.defaultConfig.duration_short :type === 2 ? ToastUtil.defaultConfig.duration_long :ToastUtil.defaultConfig.duration;return {duration: options.duration ?? defaultDuration,showMode: options.showMode ?? ToastUtil.defaultConfig.showMode,alignment: options.alignment ?? ToastUtil.defaultConfig.alignment,bottom: options.bottom ?? ToastUtil.defaultConfig.bottom,offset: options.offset ?? ToastUtil.defaultConfig.offset,textColor: options.textColor ?? ToastUtil.defaultConfig.textColor,backgroundColor: options.backgroundColor ?? ToastUtil.defaultConfig.backgroundColor,backgroundBlurStyle: options.backgroundBlurStyle ?? ToastUtil.defaultConfig.backgroundBlurStyle,shadow: options.shadow ?? ToastUtil.defaultConfig.shadow,};}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com