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 必填 | 字串 | 對話框的標題。傳遞 null 或空字串將隱藏標題。 |
message | 字串 | 一個可選訊息,顯示在對話框標題下方。 |
buttons | AlertButton[] | 一個可選陣列,包含按鈕配置。 |
options | AlertOptions | 一個可選的警示配置。 |
prompt()
iOS
tsx
static prompt: (
title: string,
message?: string,
callbackOrButtons?: ((text: string) => void) | AlertButton[],
type?: AlertType,
defaultValue?: string,
keyboardType?: string,
);
建立並顯示一個提示,以輸入文字形式的警示。
參數
名稱 | 類型 | 描述 |
---|---|---|
title 必填 | 字串 | 對話框的標題。 |
message | 字串 | 一個可選訊息,顯示在文字輸入框上方。 |
callbackOrButtons | 函式 AlertButton[] | 如果傳遞一個函式,當使用者點擊「確定」時,將會以提示的值呼叫該函式(text: string) => void 。如果傳遞一個陣列,按鈕將根據陣列內容進行配置。 |
type | AlertType | 這會配置文字輸入框。 |
defaultValue | 字串 | 文字輸入框中的預設文字。 |
keyboardType | 字串 | 第一個文字欄位的鍵盤類型(如果存在)。TextInput keyboardTypes 之一。 |
options | AlertOptions | 一個可選的警示配置。 |
類型定義
AlertButtonStyleiOS
iOS 警示按鈕樣式。
類型 |
---|
列舉 |
常數
值 | 描述 |
---|---|
'default' | 預設按鈕樣式。 |
'cancel' | 取消按鈕樣式。 |
'destructive' | 破壞性按鈕樣式。 |
AlertTypeiOS
iOS 警示類型。
類型 |
---|
列舉 |
常數
值 | 描述 |
---|---|
'default' | 沒有輸入的預設警示 |
'plain-text' | 純文字輸入警示 |
'secure-text' | 安全文字輸入警示 |
'login-password' | 登入和密碼警示 |
AlertButton
描述警示中按鈕配置的物件。
類型 |
---|
物件陣列 |
物件屬性
名稱 | 類型 | 描述 |
---|---|---|
text | 字串 | 按鈕標籤。 |
onPress | 函式 | 按下按鈕時的回調函式。 |
style iOS | AlertButtonStyle | 按鈕樣式,在 Android 上此屬性將被忽略。 |
isPreferred iOS | 布林值 | 按鈕是否應被強調,在 Android 上此屬性將被忽略。 |
AlertOptions
類型 |
---|
物件 |
屬性
名稱 | 類型 | 描述 |
---|---|---|
cancelable Android | 布林值 | 定義是否可以透過點擊警示框外部來關閉警示。 |
userInterfaceStyle iOS | 字串 | 用於警示的介面樣式,可以設定為 light 或 dark ,否則將使用預設系統樣式。 |
onDismiss Android | 函式 | 警示關閉時觸發的回調函式。 |