Каждый проект требует стандартного «Подсказочного диалогового окна». Основные характеристики: простота использования, поддержка различных стилей кастомизации, поддержка отображения текста и веб-страниц.
ohpm install @qincji/dialog
import { HintDialog, xxx } from '@qincji/dialog';
build() {
Row() {
HintDialog() // Это пустая структура
...
}
}
Основная страница: обычно требуется инициализация только один раз в MainPage.ets, но она должна быть обязательно присутствовать. При переходе на другие страницы с помощью роутера повторная инициализация не требуется.
HintDialog.open(hintParm: HintParm)
Пример 1:
HintDialog.open({
content: 'Это содержимое, использующее стандартный заголовок.',
showNo: false,
onOk: () => {
}
})
Пример 2:
HintDialog.open({
title: 'Одиночное кнопочное диалоговое окно',
content: 'Одна кнопка, изменение заголовка.',
showNo: false,
okMsg: 'Хорошо, я понял',
onOk: () => {
}
})
Пример 3:
HintDialog.open({
title: 'Web-диалоговое окно',
isWebType: true,
content: 'https://gitee.com/qincji/hint-dialog',
onNo: () => {
}
})
#### Инструкции по установке
ohpm install @qincji/dialog
import { HintDialog, xxx } from '@qincji/dialog';
build() {
Row() {
HintDialog() // Это пустая структура
...
}
}
Основная страница: обычно требуется инициализация только один раз в MainPage.ets, но она должна быть обязательно присутствовать. При переходе на другие страницы с помощью роутера повторная инициализация не требуется.
HintDialog.open(hintParm: HintParm)
Пример 1:
HintDialog.open({
content: 'Это содержимое, использующее стандартный заголовок.',
showNo: false,
onOk: () => {
}
})
Пример 2:
HintDialog.open({
title: 'Одиночное кнопочное диалоговое окно',
content: 'Одна кнопка, изменение заголовка.',
showNo: false,
okMsg: 'Хорошо, я понял',
onOk: () => {
}
})
Пример 3:
HintDialog.open({
title: 'Web-диалоговое окно',
isWebType: true,
content: 'https://gitee.com/qincji/hint-dialog',
onNo: () => {
}
})
```##### Параметры HintParm| Поле | Тип | Описание |
|---------------|--------------------|----------------------------------------------------------------------|
| content | string | Отображаемый контент, который зависит от isWebType (отображает веб или текст). Если значение пустое или неопределено, используется значение из HintStyle. |
| title | string? | Заголовок, по умолчанию: "Внимание" |
| noMsg | string? | Текст кнопки "Отмена", по умолчанию: "Отмена" |
| okMsg | string? | Текст кнопки "Ок", по умолчанию: "Ок" |
| showNo | boolean? | Необходимость отображения кнопки "Отмена", по умолчанию: true |
| isWebType | boolean? | Тип веб, по умолчанию: false |
| controller | WebviewController? | Контроллер веб, действует только если isWebType равен true. |
| outsideCancel | boolean? | Может ли отмена быть выполнена при клике вне области, по умолчанию: true. Потому что система не поддерживает перехват @CustomDialog, поэтому отмена воспринимается как клик по кнопке "Отмена". |
| onNo | () => void? | Коллбэк при клике по кнопке "Отмена" |
| onOk | () => void? | Коллбэк при клике по кнопке "Ок" |
| alignment | DialogAlignment? | Выравнивание, по умолчанию: по центру. | |> Примечание: string? : передача не обязательна.4. Закрытие (необязательно)
HintDialog.close()
5. Глобальная пользовательская стилизация (необязательно)
HintDialog.initDefaultStyle(hintStyle: HintStyle)
Пример:
const titleAttr: AttributeModifier = { applyNormalAttribute(instance: TextAttribute): void { instance.fontColor('#ff1145e5').fontWeight(FontWeight.Bolder).fontSize(25) } }; const outBoxAttr: AttributeModifier = { applyNormalAttribute(instance: ColumnAttribute): void { instance.backgroundColor('#ffc8f1b3').borderRadius(5).margin(50) } }; HintDialog.initDefaultStyle({ titleParm: new TitleParm('По умолчанию подсказка', titleAttr), outBoxAttr: outBoxAttr })
##### Параметры стиля подсказки| Поле | Тип | Описание |
|---------------|-------------------------------------|----------------------------------------------------------------------|
| isWebType | boolean? | Является ли веб-типом, по умолчанию: false |
| outsideCancel | boolean? | Может ли отмена быть выполнена при клике вне области, по умолчанию true. Потому что система не поддерживает перехват @CustomDialog клавиш, поэтому это рассматривается как клик пользователя на "Отмена" |
| alignment | DialogAlignment? | Выравнивание, по умолчанию центральное. |
| titleParm | TitleParm? | Установка содержимого и стиля заголовка, по умолчанию заголовок "Внимание" |
| textParm | TextParm? | Стили загрузки текста |
| webParm | WebParm? | Стили загрузки веб-контента |
| btnParm | BtnParm? | Стили и содержимое кнопок внизу |
| outBoxAttr | AttributeModifier<ColumnAttribute>? | Стили внешнего UI, через этот параметр можно установить цвет фона, радиус закругления, отступ от экрана и т.д. для диалогового окна. |
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )