Alert
启动一个带有指定标题和消息的警告对话框。
可选地提供一个按钮列表。点击任何按钮将触发相应的 onPress 回调并关闭警告。默认情况下,唯一的按钮将是“确定”按钮。
这是一个在 Android 和 iOS 上都可用的 API,可以显示静态警告。提示用户输入信息的警告仅在 iOS 上可用。
示例
iOS
在 iOS 上,你可以指定任意数量的按钮。每个按钮都可以选择指定样式或被强调,可用选项由 AlertButtonStyle 枚举和 AlertButton 上的 `isPreferred` 字段表示。
Android
在 Android 上,最多可以指定三个按钮。Android 有中性、否定和肯定按钮的概念
- 如果你指定一个按钮,它将是“肯定”按钮(例如“确定”)
- 两个按钮表示“否定”、“肯定”(例如“取消”、“确定”)
- 三个按钮表示“中性”、“否定”、“肯定”(例如“稍后”、“取消”、“确定”)
Android 上的警告可以通过点击警告框外部来关闭。默认情况下它是禁用的,可以通过提供一个可选的 AlertOptions 参数,并将 `cancelable` 属性设置为 `true` 来启用,即:{cancelable: true}
.
可以通过在 `options` 参数中提供 `onDismiss` 回调属性来处理取消事件。
示例Android
参考
方法
alert()
tsx
static alert (
title: string,
message?: string,
buttons?: AlertButton[],
options?: AlertOptions,
);
参数
名称 | 类型 | 描述 |
---|---|---|
title 必填 | string | 对话框的标题。传入 `null` 或空字符串将隐藏标题。 |
message | string | 显示在对话框标题下方的可选消息。 |
buttons | AlertButton[] | 包含按钮配置的可选数组。 |
options | AlertOptions | 可选的 Alert 配置。 |
prompt()
iOS
tsx
static prompt: (
title: string,
message?: string,
callbackOrButtons?: ((text: string) => void) | AlertButton[],
type?: AlertType,
defaultValue?: string,
keyboardType?: string,
);
创建并显示一个以 Alert 形式提示输入文本的对话框。
参数
名称 | 类型 | 描述 |
---|---|---|
title 必填 | string | 对话框的标题。 |
message | string | 显示在文本输入框上方的可选消息。 |
callbackOrButtons | 函数 AlertButton[] | 如果传入一个函数,当用户点击“确定”时,它将带着提示的值被调用(text: string) => void ,当用户点击“确定”时。如果传入一个数组,按钮将根据数组内容进行配置。 |
type | AlertType | 这配置了文本输入。 |
defaultValue | string | 文本输入框中的默认文本。 |
keyboardType | string | 第一个文本字段(如果存在)的键盘类型。TextInput keyboardTypes 之一。 |
options | AlertOptions | 可选的 Alert 配置。 |
类型定义
AlertButtonStyleiOS
一个 iOS 警告按钮样式。
类型 |
---|
枚举 |
常量
值 | 描述 |
---|---|
'default' | 默认按钮样式。 |
'cancel' | 取消按钮样式。 |
'destructive' | 破坏性按钮样式。 |
AlertTypeiOS
一个 iOS 警告类型。
类型 |
---|
枚举 |
常量
值 | 描述 |
---|---|
'default' | 没有输入的默认警告 |
'plain-text' | 纯文本输入警告 |
'secure-text' | 安全文本输入警告 |
'login-password' | 登录和密码警告 |
AlertButton
描述警告中按钮配置的对象。
类型 |
---|
对象数组 |
对象属性
名称 | 类型 | 描述 |
---|---|---|
text | string | 按钮标签。 |
onPress | 函数 | 按钮按下时的回调函数。 |
style iOS | AlertButtonStyle | 按钮样式,在 Android 上此属性将被忽略。 |
isPreferred iOS | 布尔值 | 按钮是否应被强调,在 Android 上此属性将被忽略。 |
AlertOptions
类型 |
---|
对象 |
属性
名称 | 类型 | 描述 |
---|---|---|
cancelable Android | 布尔值 | 定义警告是否可以通过点击警告框外部来关闭。 |
userInterfaceStyle iOS | string | 用于警告的界面样式,可以设置为 `light` 或 `dark`,否则将使用默认系统样式。 |
onDismiss Android | 函数 | 警告被关闭时触发的回调函数。 |