harmony-utils之DialogUtil,彈窗工具類
harmony-utils 簡介與說明
harmony-utils 一款功能豐富且極易上手的HarmonyOS工具庫,借助眾多實用工具類,致力于助力開發者迅速構建鴻蒙應用。其封裝的工具涵蓋了APP、設備、屏幕、授權、通知、線程間通信、彈框、吐司、生物認證、用戶首選項、拍照、相冊、掃碼、文件、日志、異常捕獲、字符、字符串、數字、集合、日期、隨機、base64、加密、解密、JSON等一系列的功能和作,能夠滿足各種不同的開發需求。
picker_utils 是harmony-utils拆分出來的一個子庫,包含 PickerUtil、PhotoHelper、ScanUtil。
下載安裝ohpm i @pura/harmony-utils
ohpm i @pura/picker_utils
//全局初始化方法,在UIAbility的onCreate方法中初始化 AppUtil.init()
onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
AppUtil.init(this.context);
}
API方法與使用
setDefaultConfig 設置默認統一樣式
DialogUtil.setDefaultConfig((config) = > {
config.title = "溫馨提示"
config.subtitle = "彈窗副標題"
config.alignment = DialogAlignment.Top
config.borderWidth = 1.2
config.autoCancel = true
});
DialogUtil.setDefaultConfig((config) = > {
config.title = "友好提示"
config.alignment = DialogAlignment.Center
config.borderWidth = 1
config.borderColor = Color.Blue
});
DialogUtil.setDefaultConfig((config) = > {
config.title = "提示"
config.alignment = DialogAlignment.Bottom
config.borderColor = Color.Blue
config.borderWidth = 0
config.autoCancel = false
});
showConfirmDialog 顯示彈窗(一個按鈕)
DialogUtil.showConfirmDialog({
title: "溫馨提示",
message: 'APP已更新最新版本!',
confirm: "確定",
onAction: () = > {
ToastUtil.showToast("點擊了“確定”按鈕");
}
});
DialogUtil.showConfirmDialog({
backCancel: false,
title: "溫馨提示",
message: 'APP已更新最新版本!',
confirm: {
value: "確定",
action: () = > {
ToastUtil.showToast("點擊了“確定”按鈕");
}
}
});
showPrimaryDialog 顯示彈窗(兩個按鈕)
DialogUtil.showPrimaryDialog({
message: '最新版本可提供更多的工具和功能,歡迎下載更新!!!',
primaryButton: "取消",
secondaryButton: "更新",
onAction: (action) = > {
if (action == DialogAction.ONE) {
ToastUtil.showToast("點擊了“取消”按鈕");
} else if (action == DialogAction.TWO) {
ToastUtil.showToast("點擊了“更新”按鈕");
}
}
});
DialogUtil.showPrimaryDialog({
title: "溫馨提示",
message: '最新版本可提供更多的工具和功能,歡迎下載更新!',
primaryButton: {
value: "取消",
fontColor: Color.Black,
action: () = > {
ToastUtil.showToast("點擊了“取消”按鈕");
}
},
secondaryButton: {
value: "更新",
fontColor: Color.Red,
action: () = > {
ToastUtil.showToast("點擊了“更新”按鈕");
}
},
onWillDismiss: (dismissDialogAction: DismissDialogAction) = > {
LogUtil.error("onWillDismiss: " + JSON.stringify(dismissDialogAction))
}
});
showDialog 顯示彈窗(可多個按鈕)
DialogUtil.showDialog({
title: "溫馨提示",
message: "最新版本可提供更多的工具和功能",
buttons: ["取消", "稍后", "更新", "升級"],
onAction: (action) = > {
ToastUtil.showToast(`點擊了:${buttons[Math.abs(action)-1]}`);
}
});
DialogUtil.showDialog({
title: "溫馨提示",
message: "最新版本可提供更多的工具和功能",
buttonDirection: DialogButtonDirection.HORIZONTAL,
buttons: [{
value: "取消",
fontColor: Color.Blue,
action: () = > {
ToastUtil.showToast(`點擊了"取消"`);
}
}, {
value: "稍后",
fontColor: Color.Green,
action: () = > {
ToastUtil.showToast(`點擊了"稍后"`);
}
}, {
value: "更新",
fontColor: Color.Red,
action: () = > {
ToastUtil.showToast(`點擊了"更新"`);
}
}]
});
showActionSheet 列表選擇彈窗
DialogUtil.showActionSheet({
message: "請選擇",
sheets: ["功能菜單一", "功能菜單二", "功能菜單三", "功能菜單四", "功能菜單五"],
onAction: (index) = > {
ToastUtil.showToast("index: " + index);
}
});
showCalendarPicker 日歷選擇器彈窗
let date = DateUtil.getToday();
DialogUtil.showCalendarPicker({
selected: date,
onAccept: (value) = > {
LogUtil.error(`選擇了: ${JSON.stringify(value)}}`);
ToastUtil.showToast(DateUtil.getFormatDateStr(value, "yyyy年MM月dd日"));
},
onCancel: () = > {
ToastUtil.showToast(`取消了`);
}
});
showDatePicker 日期滑動選擇器彈窗
let date = DateUtil.getToday();
DialogUtil.showDatePicker({
selected: date,
showTime: true,
onDateAccept: (value) = > {
LogUtil.error(`選擇了: ${JSON.stringify(value)}}`);
ToastUtil.showToast(DateUtil.getFormatDateStr(value, "yyyy年MM月dd日 HH:mm"));
},
onCancel: () = > {
ToastUtil.showToast(`取消了`);
}
});
showTimePicker 時間滑動選擇器彈窗
let date = DateUtil.getToday();
DialogUtil.showTimePicker({
selected: date,
format: TimePickerFormat.HOUR_MINUTE,
useMilitaryTime: true,
onAccept: (value) = > {
LogUtil.error(`選擇了: ${JSON.stringify(value)}}`);
ToastUtil.showToast(`${value.hour}時${value.minute}分`);
},
onCancel: () = > {
ToastUtil.showToast(`取消了`);
}
});
showTextPicker 文本滑動選擇器彈窗
private readonly array: string[] = ["黑龍江省", "哈爾濱市", "道里區", "砂山", "碭山", "高薪區"];
@State selectValue: string = '';
DialogUtil.showTextPicker({
range: array,
value: this.selectValue,
onAccept: (result) = > {
LogUtil.error(`選擇了: ${JSON.stringify(result)}}`);
this.selectValue = result.value as string;
ToastUtil.showToast(`${this.selectValue}`);
},
onCancel: () = > {
ToastUtil.showToast(`取消了`);
}
});
創作不易,請給童長老點贊
審核編輯 黃宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
Harmony
+關注
關注
0文章
108瀏覽量
3021
發布評論請先 登錄
相關推薦
熱點推薦
harmony-utils之NumberUtil,Number工具類
harmony-utils之NumberUtil,Number工具類 harmony-utils 簡介與說明
harmony-utils之PreviewUtil,文件預覽工具類
harmony-utils之PreviewUtil,文件預覽工具類 harmony-utils 簡介與說明 [
harmony-utils之StrUtil,字符串工具類
harmony-utils之StrUtil,字符串工具類 harmony-utils 簡介與說明 [ha
harmony-utils之TypeUtil,類型檢查工具類
harmony-utils之TypeUtil,類型檢查工具類 harmony-utils 簡介與說明 [
harmony-utils之AuthUtil,生物認證相關工具類
# harmony-utils之AuthUtil,生物認證相關工具類 ## harmony-utils 簡介與說明 ------[
評論