反应原生采摘者
每个采取者都需要一个回放原生应用程序,在一个零本地代码的软件包中. 轮子,时间,持续时间,日期,月,周条,可扩展日历,日期范围,日期和时间,选择,国家,电话号码,时区,分块控制,爱莫吉和取色器,滑行器,恒星评分和OTP代码输入,外加底页,动作表,菜单和可放取色器的表字段. 在iOS,Android和网络上是原生的,每个细节都是你的定制.
文档活实例( L) • 妇女 显示大小写 • 妇女 快开始 • 妇女 llms- full.txt (英语) • 妇女 更改日志
为什么这个
- 每个平台都有原生地. IPhone上的iOS设计,Android上的材料设计以及浏览器中的网络设计,从一个代码路径. 更喜欢到处看看吗? 设定
design="ios"一次 一次吗. - 零本土码. 纯JavaScript on React Independent Core API. 纯JavaScript 互联网档案馆的存檔,存档日期2013-12-21. 在"博览会去"(Expo Go)中工作,赤裸回放原生和回放原生网络,"OTA"中的船只更新. 无再活化,手柄或SVG.
- 你的定制. 带有自动暗模式的主题符,每个视觉部分的样式槽,并制成道具进行全控. 您的设置总是胜过设计 .
- 所造为表. 每个拾取者都会在下行,在下行工作表或与 Cancel / Done 的模式中,并作为打开并显示值的窗体字段,使用来自React Hook Form,Formik或Zod的错误和帮助文本.
- 真实的特征 构建在. 日期范围包括:min/max之夜,多日期,有标记的日期和价格,可用服务器搜索的可搜索选择,有国旗和拨号代码的国取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取.
- 国际和无障碍. 名字,12/24h钟和一周开始的时间来自
Intl用于任何地方; RTL 的布局翻转。 VoiceOver和TalkBack全程支持,并在网络上全面使用键盘. - 已打出字来. 一般价值类型和模式歧视的结合:
mode="range"给您打字{ start, end }。 。 。 .
安装
npm install @elik56a/react-native-pickers
或者说 yarn add, (中文(简体) ), pnpm add, (中文(简体) ), npx expo install需求 react >= 18 财务报告和审定财务报表 react-native >= 0.72。没有其它:没有安装吊舱、没有重建、没有配置插件.
快开始
import { useState } from 'react';
import { View } from 'react-native';
import {
DatePickerField,
SelectPicker,
TimePickerField,
} from '@elik56a/react-native-pickers';
import type { DateRange } from '@elik56a/react-native-pickers';
const ROOMS = [
{ label: 'Single', value: 'single' },
{ label: 'Double', value: 'double' },
{ label: 'Suite', value: 'suite' },
];
export default function Booking() {
const [stay, setStay] = useState<DateRange>({ start: null, end: null });
const [arrival, setArrival] = useState<Date | undefined>();
const [room, setRoom] = useState<string | null>(null);
return (
<View style={{ gap: 16, padding: 16 }}>
<DatePickerField
label="Stay"
mode="range"
value={stay}
onConfirm={setStay}
minDate={new Date()}
placeholder="Add dates"
/>
<TimePickerField
label="Arrival"
value={arrival}
onConfirm={setArrival}
minuteInterval={15}
/>
<SelectPicker
label="Room"
options={ROOMS}
value={room}
onChange={setRoom}
/>
</View>
);
}
每个字段在iOS和Android上的一个底页和网络上的一个倒放中打开取取取器,在这个平台的设计中,并显示为地块格式化的确认值.
构成部分
| 构成部分 | 这是什么 |
|---|---|
WheelPicker | 三维滚动轮:无限回路,已禁用的项目,自带到类型 |
MultiWheelPicker | 共享一个选择带的几个轮子:持续时间、单位、复合值 |
TimePicker | 轮子,可点击的材料时钟拨号或列; 12h / 24h 从地盘,间隔,分/最大 |
TimeRangePicker | 开始和结束时间:开放时间、班次、过夜范围、分钟/最大长度 |
DatePicker | 日历(单一、范围、多个范围)或日/月/年轮 |
MonthPicker | 一个月又一年,就像卡片的过期: iOS上的车轮, 材料和网上的月网 |
WeekStrip | 连续一周有标记的天数;刷出或箭头以改变周数 |
ExpandableCalendar | 用拖放或手柄打开月份的一周,用于排程屏幕 |
Timeline | 一日或一周的取景:按小时显示的事件,并排重叠,全天活动,现在的一行和需要加载的自带 |
Agenda | 事件逐日作为列表: iOS粘相日带或Google Calendar的日程, 与日历同步 |
DurationPicker | 时间长度, 如定时器或修饰: 轮子、 要点击的材料编号框或列, 以秒计的值 |
DateTimePicker | 白天和时间在一起:一行轮子,或带有时间在它下面或旁边的日历 |
SelectPicker | 打开可搜索列表的字段:单一或多选择、芯片、组、图标、服务器搜索、搜索中的新选项 |
SelectList | 同一列表, 内含 |
CountryPicker | 大约250个国家有旗帜和拨号码、本地化名称、首选国家 |
LanguagePicker | 86种有旗帜的语言,每种都用自有名称(Español,QQ),其名称取自下方的用户语言,从右到左检测 |
PhoneField | 电话号码输入:一个国家代码按钮,输入时格式化的数字,E.164值 |
CurrencyPicker | 154种有旗帜,代码和符号的货币,用户语言名称,按名称,代码或符号搜索 |
AmountField | 货币输入按地块格式、货币小数位、货币按钮、取出屏幕的大额分类 |
TimeZonePicker | 每个IANA时区及其GMT相抵,由相抵排序,设备的区在上方 |
HorizontalList | 分块控件或芯片来滚动侧面并显示下一个项目 |
ColorPicker | iOS 的网格 / spectrum / sliders, Google 的监视圈, 或浏览器的频谱; 有不透明和复制按钮的十六进制 |
Slider | iOS 的 knob, 材质 3 的手柄带有值泡, 或范围输入; 一个拇指或范围, 步骤, 图标 |
OtpField | 每个字符的框中的校验代码:iOS、Android和网络上的短信自动填充、粘贴、PIN模式 |
Rating | 星级评分:自拍或拖曳,分出半步,只读分数,自有图标 |
EmojiPicker | 1,923个emojis:分类,搜索,皮肤色调(长压为一emoji's),最新,版本过滤 |
BottomSheet | 包含拖放内容的动画工作表 |
Menu | 由它触发的下拉或长压上下文的动作菜单;纯JS,所以它在博览会Go和网上运行 |
ActionSheet | 共享或删除等动作列表: iOS卡或材料行, 破坏和禁用动作 |
| 拾取纸 | DatePickerSheet, (中文(简体) ), TimePickerSheet, (中文(简体) ), TimeRangePickerSheet, (中文(简体) ), DateTimePickerSheet, (中文(简体) ), DurationPickerSheet, (中文(简体) ), MonthPickerSheet, (中文(简体) ), ColorPickerSheet, (中文(简体) ), WheelPickerSheet, (中文(简体) ), EmojiPickerSheet: 工作表中带有取消/ 完成的拾取器 |
| 拾取字段 | DatePickerField, (中文(简体) ), TimePickerField, (中文(简体) ), TimeRangePickerField, (中文(简体) ), DateTimePickerField, (中文(简体) ), DurationPickerField, (中文(简体) ), MonthPickerField, (中文(简体) ), ColorPickerField, (中文(简体) ), WheelPickerField, (中文(简体) ), EmojiPickerField, (中文(简体) ), PickerField: 打开拾取器的窗体字段 |
内入工作表或字段后
每取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取.
// Inline: changes as the user scrolls or taps
<DatePicker value={date} onChange={setDate} />
// In a sheet: keeps a draft, commits on Done, discards on Cancel
<DatePickerSheet
visible={open}
onClose={() => setOpen(false)}
value={date}
onConfirm={setDate}
/>
// Behind a field: owns the open state, shows the confirmed value
<DatePickerField label="Date" value={date} onConfirm={setDate} />
工作表作为底页打开,或作为宽网窗口上的一种中心模式打开(presentation="bottomSheet" | "modal") (中文(简体) ). 外地和 SelectPicker 也可以在字段下作为下行打开,即他们在网络上的默认值(presentation="dropdown"),或在其下扩展内线,将内容推到下方,比如iOS设置应用(英语:presentation="inline") (中文(简体) ). PickerField 将您自己的工作表包入一个字段.
按钮文本也是你的: confirmLabel, (中文(简体) ), cancelLabel 财务报告和审定财务报表 showCancel 在任何工作表或字段上.
设计:每个平台的原生
默认情况下,每个平台都有自己的设计(design="auto") (中文(简体) ). 设计改变形状和布局, 绝不改变颜色 :
ios | material | web | |
|---|---|---|---|
| 字段 | 上面的标签 | ,将标签浮出边框 | 上面的标签,紧凑,焦点环 |
| 取消/ 确认 | 除了一个中心标题, 完成 | 在内容之后, | 在内容之后, 完成 |
| 单项选择 | 在所选选项之外 | 每个选项都有收音机 | 在所选选项之外 |
| 日历 | 选择的有色日 | 选择了填满的一天,今天响起 | 选定一个已填平的平方天 |
| 时间 | 轮子 | 一个时钟拨号 | 点击时长和分数列 |
| 日期和时间 | 一行轮子 | 日历, 其下的时间字段 | 日历, 旁边的时间列 |
| 新闻 | 暗处 | 连线 | 暗处 |
为整个应用程序或一个组件选择一个设计:
// The iOS look on Android and the web too
<PickersProvider design="ios">
<App />
</PickersProvider>
// One component
<TimePicker design="material" value={time} onChange={setTime} />
或者保持设计,用自己的道具改变一个选择: display="wheel" 打开 TimePicker, (中文(简体) ), timeDisplay 财务报告和审定财务报表 timePosition 打开 DateTimePicker, (中文(简体) ), confirmLabel 在任何工作单上。 见 设计指南。 。 。 .
从0.10升级? Android和网络现在获得材料和网络设计. 设定
<PickersProvider design="ios">以保持之前的眼神无所不在.从0.12升级?
EmojiPicker也遵循设计:在iOS和Android上,它的分类栏会向下移动,就像平台的emoji键盘. 设定categoryBarPosition="top"保持它的顶端.
自定义任何东西
主题 你的整个应用一次。 这是可选的:光和暗的默认遵循OS.
import { PickersProvider } from '@elik56a/react-native-pickers';
<PickersProvider
colorScheme="auto" // 'auto' | 'light' | 'dark'
design="auto" // 'auto' | 'ios' | 'material' | 'web'
theme={{
colors: { primary: '#FF5A5F' },
radius: { md: 8 },
typography: { fontFamily: 'Inter' },
}}
darkTheme={{
colors: { primary: '#FF8A8E', background: '#000' },
}}
>
<App />
</PickersProvider>
| 托肯组 | 密钥 |
|---|---|
colors | background surface sheet text textSecondary textDisabled primary onPrimary primaryMuted border backdrop indicator handle hover ripple danger |
radius | sm md lg full sheet |
spacing | xs sm md lg xl |
typography | fontFamily fontFamilyMedium sizes weights |
animation | duration |
任何组件也需要 theme 财务报告和审定财务报表 design 用于本地覆盖.
槽样式 到达每个视觉部分,所以你永远不会叉:
<DatePicker
styles={{
selectedDay: { borderRadius: 8 },
dayText: { fontFamily: 'Inter' },
rangeBand: { backgroundColor: '#FFE4E6' },
}}
/>
渲染道具 替换一部分并保持其行为和无障碍性:
| 构成部分 | 渲染道具 |
|---|---|
| 轮子 | renderItem, (中文(简体) ), renderIndicator |
HorizontalList | renderItem, (中文(简体) ), renderArrow |
| 日历 | renderDay, (中文(简体) ), renderArrow |
SelectPicker, (中文(简体) ), SelectList | renderOption, (中文(简体) ), renderGroupHeader, (中文(简体) ), renderLoading, (中文(简体) ), renderTrigger, (中文(简体) ), renderChevron |
EmojiPicker | renderEmoji |
Rating | renderIcon |
| 字段 | renderTrigger, (中文(简体) ), renderChevron |
很高兴知道
-
被控制或不受控制. 过
value+ 键onChange,或defaultValue。 。 。 .SelectPicker, (中文(简体) ),SelectList财务报告和审定财务报表HorizontalList仅控制:更新value内onChange。 。 。 . -
onChange仅用于用户更改. 设置value在代码中静静地移动拾取者。 轮子起火onChange当他们定居的时候onValueChanging在每一行,和Slider在释放时,和在每一步上,那是可喜的地方. -
工作表承诺完成.
onConfirm获得值; 取消, 背景并拖放草稿 . -
满载快活. 拖放,卷轴和动画运行在UI线条上,因此在JavaScript忙碌的时候,它们停留在60英尺. 见 基准 反对
@gorhom/bottom-sheetQuidone的取轮机和react-native-calendars。 。 。 . -
日期为当地时间. 按当地年份、月份和天数比较天数。 按顺序排列
toDateKey(date)(单位:千美元)'YYYY-MM-DD'(没有)toISOString()。 。 。 . -
比较小的本土捆. Metro不树摇,所以在本地,从一个特征子路径导入(React Introduct 0.79+):
import { DatePicker } from '@elik56a/react-native-pickers/date';子路径 :
/wheel/time/duration/date/calendar/month/datetime/select/country/timezone/list/emoji/color/slider/rating/otp/action/sheet/core。 。 。 .
API 一览
这个 完整 API 参考 列出每个道具。 这些是你要找的.
轮选器<T>
| Prop | 类型 | 默认 |
|---|---|---|
items | (T | { label, value, disabled? })[] | |
value | T | |
onChange | (value, index) => void当轮子摆平时 | |
onValueChanging | (value, index) => void,每行显示 | |
loop | boolean | false |
itemHeight | number | 40 |
visibleItems | number (奇数) | 5 |
variant | '3d' | 'flat' | '3d' |
keyboardInput | boolean: 将所选行打入 | true |
isEqual | (a, b) => boolean对象值 | Object.is |
MultiWheelPicker 带 columns: { key, items, value, onChange, flex?, width?, loop?, suffix? }[] 和可选 separator。 。 。 .
时间选择器
| Prop | 类型 | 默认 |
|---|---|---|
value | Date (保留日期部分) | 现在 |
onChange | (date) => void | |
display | 'wheel' | 'dial' | 'input' | 'list' | 从设计 |
format | '12h' | '24h' | 'auto' | 'auto'从 locale |
minuteInterval | number | 1 |
showSeconds | boolean | false |
minTime 编号 : maxTime | Date (日数) | |
locale | string | 设备 |
MonthPicker, WeekStrip 和可扩展卡伦达尔
MonthPicker 选择月份和年份;值为 Date 在第一个月。 iOS上的轮子,即材料和网上一年下几个月的网格(display),与 minDate 编号 : maxDate, (中文(简体) ), yearRange, (中文(简体) ), monthFormat 财务报告和审定财务报表 locale。 。 。 . MonthPickerField 显示 October 2026。 。 。 .
WeekStrip 连续一周: value, (中文(简体) ), onChange(date),刷或箭头到页面, onWeekChange(weekStart)日历 markedDates, (中文(简体) ), minDate 编号 : maxDate, (中文(简体) ), isDateDisabled, (中文(简体) ), firstDayOfWeek 财务报告和审定财务报表 renderDay。 。 。 .
ExpandableCalendar 是一个 WeekStrip 打开了月球的下方或下方的手柄 折回所选的一周: 相同的道具,加 expanded 编号 : defaultExpanded 编号 : onExpandedChange 财务报告和审定财务报表 onMonthChange。 。 。 .
时间表和议程
两个都用一个平整的系列事件, { id, title, start: Date, end: Date, allDay?, color?, subtitle? }随你喜欢的田地延伸.
Timeline 是日历的日视图,或最多一周的相并(numberOfDays:按时间排列出的事件,相并相并相并,全天事件在网格上并有一条线在当下. 逐天刷取一页date 编号 : onDateChange, (中文(简体) ), onEventPress 打开事件并 onSlotPress({ start, end }) 添加一个被窃听的网格. startHour, (中文(简体) ), endHour, (中文(简体) ), hourHeight, (中文(简体) ), format 财务报告和审定财务报表 renderEvent 塑造它.
Agenda 逐日列出同一事件:iOS上每天有粘接的乐队,在材料和网络中每天活动相隔的日期. 它滚动到 selectedDate 并用 onVisibleDateChange,所以它保持与一个 ExpandableCalendar {\fn华文仿宋\fs16\1chd1d1d1}在它上面.
const [day, setDay] = useState(new Date());
<ExpandableCalendar value={day} onChange={setDay} />
<Agenda events={events} selectedDate={day} onVisibleDateChange={setDay} style={{ flex: 1 }} />
// or a day view
<Timeline events={events} date={day} onDateChange={setDay} onSlotPress={addEvent} style={{ flex: 1 }} />
颜色选择器
| Prop | 类型 | 默认 |
|---|---|---|
value | 六进制 string,例如 '#E4572E' | '#2196F3' |
onChange | (color) => void,与 '#RRGGBB' | |
display | 'tabs' | 'swatches' | 'spectrum' | 从设计 |
colors | (string | { value, label? })[] | 24个已命名的颜色 |
showCustom | boolean: 网格、频谱、滑动和十六进制字段 | true |
showAlpha | boolean: 一个不透明的滑动器, '#RRGGBBAA' 数值 | false |
onCopy | (hex) => unknown: 复制按钮; 网页上的浏览器剪贴板 |
ColorPickerField 显示 swatch 和 ix 代码 .
幻灯片
| Prop | 类型 | 默认 |
|---|---|---|
value | number,或 [number, number] 与 range | min |
onChange | (value) => void: 发布时,或键或屏幕读取步骤 | |
onValueChanging | (value) => void: 拖曳时的每个步骤 | |
min 编号 : max 编号 : step | number· ; step={0} 任何数值 | 0 编号 : 100 编号 : 1 |
range | boolean: 二个拇指 | false |
showSteps | boolean: 每步一个点 | false |
marks 编号 : snapToMarks | (number | { value, label? })[]: 有标签的点 / 只有标记可以选择 | 编号 : false |
valueLabel | 'never' | 'drag' | 'always': 价值泡沫 | 'drag' 物质 |
minimumIcon 编号 : maximumIcon | ReactNode 在赛道旁 |
Otp 战地
| Prop | 类型 | 默认 |
|---|---|---|
value | string: 到目前为止的代码 | '' |
onChange | (code) => void: 当用户类型、删除或粘贴时 | |
onComplete | (code) => void: 一旦填入最后一个单元格 | |
length | number | 6 |
inputMode | 'numeric' | 'text' | 'numeric' |
secureTextEntry | boolean:点,一个PIN | false |
error 编号 : helperText | string | boolean 编号 : string:红盒子,它们下面的信息 |
评级
| Prop | 类型 | 默认 |
|---|---|---|
value | number | 0 |
onChange | (value) => void:在水龙头上,拖曳的结束,或关键步骤 | |
max 编号 : step | number· ; step={0.5} 半个恒星 | 5 编号 : 1 |
readOnly | boolean: 显示任何分数, 无触摸 | false |
size 编号 : color 编号 : emptyColor | 恒星大小和颜色 | 32 / 金子/ 主题边框 |
renderIcon | ({ index, filled, color, size }) => ReactNode | 页:1 |
长度选择器
相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相去相相去相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相 值为数秒.
| Prop | 类型 | 默认 |
|---|---|---|
value | number (单位:秒) | 0 |
onChange | (seconds) => void | |
display | 'wheel' | 'input' | 'list' | 从设计 |
showHours 编号 : showSeconds | boolean | true 编号 : false |
min 编号 : max | number (单位:秒) | 0 23小时59分59秒 |
minuteInterval 编号 : secondInterval | number | 1 |
labels | { hours?, minutes?, seconds? } | h, (中文(简体) ), min, (中文(简体) ), s |
DurationPickerField 显示确认的持续时间为: 1 h 30 min,以及 formatDuration(seconds) 写它的方式相同.
日期选择器
mode | value | onChange | 额外道具 |
|---|---|---|---|
'single' (默认) | Date | null | (date) | |
'range' | { start, end } | (range) | minRangeDays maxRangeDays allowSingleDayRange presets |
'multiple' | Date[] | (dates) | maxSelections |
'ranges' | DateRange[] | (ranges) | maxRanges |
| Prop | 类型 | 默认 |
|---|---|---|
display | 'calendar' | 'wheel' | 'calendar' |
minDate 编号 : maxDate | Date | |
isDateDisabled | (date) => boolean | |
markedDates | { 'YYYY-MM-DD': { dots?, label?, textColor?, disabled? } } | |
locale | string | 设备 |
firstDayOfWeek | 0– 说吧 –6 (单位:千美元)0 = 星期日) (中文(简体) ) | 从 locale |
onMonthChange | (month) => void |
日期时间选择器
| Prop | 类型 | 默认 |
|---|---|---|
value | Date | 现在 |
onChange | (date) => void | |
display | 'wheel' | 'calendar' | 'wheel' 在iOS设计中,其他 'calendar' |
minDate 编号 : maxDate | Date (日期和时间) | |
timePosition | 'beside' | 'below' | 'beside' 网络 |
timeDisplay | 'wheel' | 'dial' | 'input' | 'list' | 从设计 |
minuteInterval | number | 1 |
calendarProps | 日历道具,例如 markedDates |
选择点击器<T> 和选择列表<T>
| Prop | 类型 | 默认 |
|---|---|---|
options | { label, value, description?, icon?, group?, disabled?, keywords? }[] | [] |
value | T | null,或 T[] 与 multiple | |
onChange | (value, option) => void | |
multiple | boolean,与 maxSelected 财务报告和审定财务报表 chips | false |
searchable | boolean | 8个以上选项 |
loadOptions | (query) => Promise<options>: 搜索服务器 | |
clearable 编号 : onClear | boolean 编号 : () => void | false |
error 编号 : helperText 编号 : required | string | boolean 编号 : string 编号 : boolean: 字段随下方的消息而变红 | |
presentation | 'auto' | 'bottomSheet' | 'modal' | 'dropdown' | 'inline' | 'auto': 网络下拉 |
loadOptions 等待打入暂停, 显示加载器并忽略对旧询问的回答 :
<SelectPicker
label="City"
loadOptions={(query) => api.searchCities(query)}
value={city}
onChange={setCity}
/>
国家选择器
A 类 SelectPicker 拥有约250个国家。 值是 ISO 代码 ('IL'),并且搜索匹配英语和本土名称,ISO代码和拨号代码.
| Prop | 类型 | 默认 |
|---|---|---|
value 编号 : onChange | CountryCode,或 CountryCode[] 与 multiple | |
preferred | CountryCode[]: 被钉在顶上 | |
countries 编号 : exclude | CountryCode[] | 全部 |
showDialCode | boolean | false |
locale | string: 姓名通过 Intl.DisplayNames,英语后退 | 设备定位 |
getCountry('IL') 返回时 { code, name, nativeName, dialCode, flag, keywords }。 。 。 .
语言选择器
A 类 SelectPicker 使用86种语言,用于应用程序的语言设置。 每个节目都用自己的名字,例如 Español,其名称取自下方用户语言. 值为 BCP 47 标记 ('es', (中文(简体) ), 'pt-BR', (中文(简体) ), 'zh-Hant') (中文(简体) ).
| Prop | 类型 | 默认 |
|---|---|---|
value 编号 : onChange | LanguageCode,或 LanguageCode[] 与 multiple | |
preferred | LanguageCode[]: 被钉在顶上 | |
languages 编号 : exclude | LanguageCode[] | 全部 |
locale | string: 姓名通过 Intl.DisplayNames,英语后退 | 设备定位 |
showFlag 编号 : flags | boolean 编号 : { en: 'GB' } 更改一些旗帜 | true |
isRtlLanguage('ar-EG') 说明语言是否从右到左写出,以及 getLanguage('he') 返回时 { code, name, nativeName, country, rtl }。 。 。 .
电话领域
一个电话号码输入:一个打开国家列表的旗帜和呼叫代码按钮,然后数字,将国家写作的方式分组. 数值为E.164('+972541234567'; 粘贴 +44… 数字切换国家.
| Prop | 类型 | 默认 |
|---|---|---|
value 编号 : onChange | string 联合国, onChange(value, { country, nationalNumber, valid }) | |
country 编号 : defaultCountry 编号 : onCountryChange | CountryCode | 'US' |
preferred 编号 : countries 编号 : exclude 编号 : locale | 作为 CountryPicker | |
label 编号 : placeholder | string | 以国家为形式的范例 |
parsePhone('+44 7911 123456') 返回时 { country: 'GB', nationalNumber: '7911123456' }。 。 。 .
货币选择器和金额
CurrencyPicker 是一个 SelectPicker 含有154种货币,每种货币都有其旗帜、代码和符号;其值为ISO 4217代码('EUR') (中文(简体) ). AmountField 是金钱输入: 以 locale 格式键入的金额 $1,234.50, (中文(简体) ), 1.234,50 €),币值为小数位. 值是一个数字,或 null 当虚空.
| Prop | 类型 | 默认 |
|---|---|---|
value 编号 : onChange | number | null | |
currency 编号 : defaultCurrency 编号 : onCurrencyChange | CurrencyCode | 'USD' |
variant | 'field',或 'large':大而居中,用于离职和寄出货币屏幕 | 'field' |
showCurrencyPicker | boolean: 打开的旗帜和代码按钮 CurrencyPicker | false |
locale | string: 分隔符和符号侧 | 设备定位 |
getCurrency('JPY') 返回时 { code, name, symbol, decimals, country }· ; decimals 将金额变成小单位.
时间区选择器
A 类 SelectPicker 与每个IANA的时区相接而成,每个时区与其城市相接,GMT相接并取名相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相相接相接相接相接相接相接相相相接相接相接相接相接相接相相相接相接相接相接相接相接相相接相接相接相接相相接相接相相相相相相相相相接相 值为 IANA 名称 ('Europe/Lisbon'); 旧名像 'Asia/Calcutta' 被接受并报告为新的.
| Prop | 类型 | 默认 |
|---|---|---|
value 编号 : onChange | string,或 string[] 与 multiple | |
preferred | string[]: 被钉在顶上 | 设备的区域 |
timeZones | string[] | 全部 |
date | Date:冲销时间 | 现在 |
getDeviceTimeZone(), (中文(简体) ), getTimeZoneOffset(id) (分钟)和 formatGmtOffset(330) → 'GMT+5:30' 也输出.
水平列表<T>
| Prop | 类型 | 默认 |
|---|---|---|
items | { label, value, disabled?, icon? }[] | |
value | T | |
onChange | (value, item) => void | |
variant | 'segmented' | 'chips' | 'segmented' |
iconPosition | 'left' | 'right' | 'top' | 'bottom' | 'left' |
showArrows | boolean:qq 滚动列表的按钮 | false |
arrowPosition | 'outside' | 'overlay': 列表外或其边缘 | 'outside' |
爱莫吉派克
| Prop | 类型 | 默认 |
|---|---|---|
onSelect | (emoji, data) => void | |
columns 编号 : height | number | 8 编号 : 380 |
categories 编号 : exclude | 要显示的, 顺序/ 要隐藏的字符 | 全部 |
maxEmojiVersion | number隐藏旧的装置无法渲染 | |
skinTone 编号 : onSkinToneChange | 0– 说吧 –5,从qq按钮;长长的媒体选择一个emoji的音调 | 0 |
recent 编号 : onRecentChange | string[]: 坚持您自己的存储 | [] |
categoryBarPosition | 'auto' | 'top' | 'bottom'数字 : auto 在iOS和Android的下方,在网络的上方 | 'auto' |
工作表、 字段、 底盘、 动作板和菜单
| 构成部分 | 道具 |
|---|---|
| 拾取纸 | visible onClose value onConfirm title confirmLabel cancelLabel showCancel presentation sheetProps,加上拾取者的道具 |
| 拾取字段 | 工作表的道具没有 visible附加时 label placeholder displayValue clearable onClear disabled error helperText required presentation renderTrigger renderChevron |
BottomSheet | visible onClose title headerLeft headerRight footer height enableSwipeToClose expandable showHandle presentation |
ActionSheet | visible onClose actions (单位:千美元){ label, onPress, description, icon, selected, destructive, disabled }(中文(简体) ) title message showCancel cancelLabel presentation· ; onPress 工作表关闭后运行 |
Menu | actions children (触发器,或 ({ open }) => …(中文(简体) ) title align width presentation (单位:千美元)'menu' | 'sheet'(中文(简体) ) openOnLongPress disabled onOpen onClose |
useActionSheet() | 返回时 { show, hide, actionSheet }: 渲染 actionSheet 一回电话 show({ title, actions }) 从任何处理器, 没有提供者 |
公用事业
| 区域 | 出口 |
|---|---|
| 日期 | toDateKey addDays addMonths isSameDay formatDate getRangePresets |
| 时间 | formatTimeRange getTimeRangeSeconds formatDuration |
| 国家、电话、时区 | getCountry parsePhone isValidPhone toE164 getDeviceTimeZone formatGmtOffset |
| 颜色 | normalizeHex hexToHsv hsvToHex withAlpha |
| 爱莫吉 | getAllEmojis searchEmojis findEmoji withSkinTone |
| 主题 | usePickerTheme createTheme resolveDesign |
| 工作表 | useDraft: 自己工作表的草稿状态 |
平台
| 平台 | 支助 |
|---|---|
| 博览会 Go, Dev 建筑, EAS | ✅ |
| 裸体反应原生(iOS, Android),新建筑,赫尔墨斯 | ✅ |
| 反应原生网络, 博览会路由器网络, Next.js | ✅ |
| 视窗、 macOS | 未测试;只使用核心组件,使用材料设计 |
在浏览器中预览iOS或Android行为(Storybook,一个设计系统),设置 <PickersProvider platform="ios">。 。 。 .
人工智能助理
完整的文件是Markdown文件, llms-full.txt,索引为 llms.txt。它也在货包内 node_modules/@elik56a/react-native-pickers/llms-full.txt,匹配已安装的版本。 一个代码生成的短小作弊表正在 人工智能助理 页 次.
学多点
- 指南: 设计 • 妇女 主题 • 妇女 带有槽的样式 • 妇女 制作道具 • 妇女 i18n 和 RTL • 妇女 无障碍 • 妇女 杂乱 • 妇女 表单 • 妇女 类型脚本
- 食谱 : 旅馆预订范围 • 妇女 生日快乐 • 妇女 提醒时间 • 妇女 会期 • 妇女 国家和电话号码 • 妇女 服务器搜索 • 妇女 飞行搜索表 • 妇女 聊天的emoji • 妇女 过滤工作表
- 从另一个图书馆来的? 移徙 绘制
@react-native-community/datetimepicker, (中文(简体) ),react-native-date-picker, (中文(简体) ),react-native-modal-datetime-picker, (中文(简体) ),react-native-calendars, (中文(简体) ),react-native-picker-select, (中文(简体) ),react-native-dropdown-picker, (中文(简体) ),react-native-element-dropdown, (中文(简体) ),@react-native-picker/picker,本地的分块控制,react-native-ui-datepicker, (中文(简体) ),react-native-calendar-strip, (中文(简体) ),react-native-modal-selector, (中文(简体) ),reanimated-color-picker, (中文(简体) ),react-native-country-picker-modal, (中文(简体) ),react-native-phone-number-input, (中文(简体) ),rn-emoji-keyboard, (中文(简体) ),@react-native-community/slider, (中文(简体) ),react-native-otp-entry, (中文(简体) ),react-native-ratings, (中文(简体) ),@gorhom/bottom-sheet, (中文(简体) ),react-native-modal, (中文(简体) ),@expo/react-native-action-sheet, (中文(简体) ),zeego还有更多. 比较 显示何时选择其它东西.
捐款
欢迎提出问题和拉动请求。 见 捐款额 用于设置,示例应用程序和文档网站.
Emoji的数据来自 爱莫吉基地 (麻省理工学院).
许可证
麻省理工学院 埃里亚乌·克赖尔