React Native Paper – это популярная библиотека пользовательского интерфейса, предоставляющая набор настраиваемых компонентов для создания пользовательских интерфейсов в приложениях React Native. Одним из важнейших компонентов в любой форме является поле выбора, которое позволяет пользователям выбирать вариант из раскрывающегося списка. В этой статье мы рассмотрим различные методы создания выбранных входных данных с помощью React Native Paper, а также приведем примеры кода.
Метод 1: использование компонента раскрывающегося списка
React Native Paper предоставляет компонент раскрывающегося списка, который можно использовать для создания ввода выбора. Вот пример:
import React, { useState } from 'react';
import { Dropdown } from 'react-native-paper';
const MySelectInput = () => {
const [selectedItem, setSelectedItem] = useState(null);
const items = [
{ label: 'Option 1', value: 'option1' },
{ label: 'Option 2', value: 'option2' },
{ label: 'Option 3', value: 'option3' },
];
return (
<Dropdown
label="Select an option"
value={selectedItem}
onValueChange={(itemValue) => setSelectedItem(itemValue)}
items={items}
/>
);
};
export default MySelectInput;
Метод 2: использование компонента Picker
React Native предоставляет компонент Picker, который можно использовать в сочетании с React Native Paper для создания входных данных выбора. Вот пример:
import React, { useState } from 'react';
import { Picker } from '@react-native-picker/picker';
import { TextInput } from 'react-native-paper';
const MySelectInput = () => {
const [selectedItem, setSelectedItem] = useState(null);
const items = [
{ label: 'Option 1', value: 'option1' },
{ label: 'Option 2', value: 'option2' },
{ label: 'Option 3', value: 'option3' },
];
return (
<TextInput>
<Picker
selectedValue={selectedItem}
onValueChange={(itemValue) => setSelectedItem(itemValue)}
>
{items.map((item) => (
<Picker.Item
key={item.value}
label={item.label}
value={item.value}
/>
))}
</Picker>
</TextInput>
);
};
export default MySelectInput;
Метод 3: использование компонента меню
Компонент меню React Native Paper также можно использовать для создания поля выбора. Вот пример:
import React, { useState } from 'react';
import { Menu, Button } from 'react-native-paper';
const MySelectInput = () => {
const [visible, setVisible] = useState(false);
const [selectedItem, setSelectedItem] = useState(null);
const items = [
{ label: 'Option 1', value: 'option1' },
{ label: 'Option 2', value: 'option2' },
{ label: 'Option 3', value: 'option3' },
];
const openMenu = () => setVisible(true);
const closeMenu = () => setVisible(false);
const handleMenuItemSelect = (itemValue) => {
setSelectedItem(itemValue);
closeMenu();
};
return (
<>
<Button onPress={openMenu}>{selectedItem ? selectedItem : 'Select an option'}</Button>
<Menu
visible={visible}
onDismiss={closeMenu}
anchor={<Button onPress={openMenu} />}
>
{items.map((item) => (
<Menu.Item
key={item.value}
onPress={() => handleMenuItemSelect(item.value)}
title={item.label}
/>
))}
</Menu>
</>
);
};
export default MySelectInput;
В этой статье мы рассмотрели различные методы создания выбранных входных данных в React Native Paper. Мы узнали, как использовать компонент «Выпадающий список», компонент «Выбор» и компонент «Меню» для реализации входных данных выбора с примерами кода. Используя эти методы, вы можете создавать богатые и интерактивные входные данные выбора в своих приложениях React Native.