Метод prompt
Метод prompt класса
Alert
работает только на iOS.
На Android этого метода нет.
Передают заголовок, сообщение, функцию ответа или массив кнопок,
тип поля type, значение по умолчанию и тип клавиатуры.
Для type используют 'default', 'plain-text',
'secure-text' и 'login-password'.
Синтаксис
Alert.prompt(
title,
message,
callback,
type,
defaultValue,
keyboardType,
);
Параметры
| Параметр | Описание |
|---|---|
title |
Заголовок окна. |
message |
Текст под заголовком. |
callback |
Функция с введённой строкой или массив кнопок вместо неё. |
type |
'default', 'plain-text', 'secure-text'
или 'login-password' для вида поля.
|
defaultValue |
Начальный текст в поле. |
keyboardType |
Тип клавиатуры, как у
TextInput.
|
Пример
Давайте запросим строку с callback на iOS:
import { Alert, Platform } from 'react-native';
if (Platform.OS === 'ios') {
Alert.prompt('abcde', '12345', (text) => {
console.log(text);
});
}
На iOS появится окно с полем. После подтверждения в консоль попадёт введённая строка.
Пример
Давайте откроем prompt с паролем и значением по умолчанию:
import { View, Button, Alert, Platform } from 'react-native';
export default function App() {
const onPress = () => {
if (Platform.OS !== 'ios') {
return;
}
Alert.prompt(
'abcde',
'12345',
(text) => {
console.log(text);
},
'secure-text',
'abcde',
);
};
return (
<View>
<Button title="12345" onPress={onPress} />
</View>
);
}
На экране кнопка.
На iOS откроется окно со скрытым вводом и начальным текстом 'abcde'.
Смотрите также
-
метод
alert,
который работает на iOS и Android -
компонент
TextInput,
когда поле нужно прямо на экране -
перечисление
KeyboardType,
которое задаёт клавиатуру для ввода -
класс
Platform,
которым проверяютOSперед вызовом