@react-native-picker/picker| Android | iOS | Pickerios |
|---|---|---|
![]() | ![]() | ![]() |
| Fenster | Macos |
|---|---|
![]() | ![]() |
| @React-Native-Picker/Picker | reagieren nativ | reagieren nativen stowows |
|---|---|---|
| > = 2.0.0 | 0,61+ | 0,64+ |
| > = 1.16.0 | 0,61+ | 0,61+ |
| > = 1.2.0 | 0,60+ oder 0,59+ mit Jetifier | N / A |
| > = 1.0.0 | 0,57 | N / A |
$ npm install @react-native-picker/picker --save
oder
$ yarn add @react-native-picker/picker
Als [email protected] und höher unterstützt das Autolinking nicht, dass der Verknüpfungsprozess nicht ausgeführt werden muss. Lesen Sie hier mehr über Autolinking. Dies wird von [email protected] und höher unterstützt.
Cocoapods auf iOS benötigen diesen zusätzlichen Schritt:
npx pod-install
Es ist kein zusätzlicher Schritt erforderlich.
Die Verwendung in Windows ohne Autolinking erfordert die folgenden zusätzlichen Schritte:
ReactNativePicker -Projekt Ihrer Lösung hinzu.D:devRNTestnode_modules@react-native-pickerpickerwindowsReactNativePickerReactNativePicker.vcxproj Fügen Sie Ihrem Hauptantragsprojekt einen Verweis auf ReactNativePicker hinzu. Von Visual Studio 2019:
Klicken Sie mit der rechten Maustaste auf Hauptanwendungsprojekt> Hinzufügen> Referenz ... ReactNativePicker von Lösungsprojekten.
Fügen Sie #include "winrt/ReactNativePicker.h" zu den Headern oben in der Datei hinzu.
Add PackageProviders().Append(winrt::ReactNativePicker::ReactPackageProvider()); vor InitializeComponent(); .
Cocoapods on macOS benötigt diesen zusätzlichen Schritt (aus dem MacOS -Verzeichnis genannt)
pod install
Die folgenden Schritte sind nur erforderlich, wenn Sie mit einer Version von React Native unter 0,60 arbeiten
$ react-native link @react-native-picker/picker
Libraries ➜ Add Files to [your project's name]node_modules ➜ @react-native-picker/picker und fügen Sie RNCPicker.xcodeproj hinzulibRNCPicker.a zu Build Phases Ihres Projekts hinzu. ➜ Link Binary With LibrariesCmd+R ) < android/app/src/main/java/[...]/MainApplication.java .import com.reactnativecommunity.picker.RNCPickerPackage; zu den Importen oben in der DateigetPackages() -Methode zurückgegebenen Liste new RNCPickerPackage() hinzuandroid/settings.gradle an: include ':@react-native-picker_picker'
project(':@react-native-picker_picker').projectDir = new File(rootProject.projectDir, '../node_modules/@react-native-picker/picker/android')
android/app/build.gradle : implementation project(path: ':@react-native-picker_picker')
Libraries ➜ Add Files to [your project's name]node_modules ➜ @react-native-picker/picker und fügen Sie RNCPicker.xcodeproj hinzulibRNCPicker.a zu Build Phases Ihres Projekts hinzu. ➜ Link Binary With LibrariesCmd+R ) < Sie müssen android:supportsRtl="true" zu AndroidManifest.xml
< application
...
android : supportsRtl = " true " > Importieren Sie den Picker von @react-native-picker/picker :
import { Picker } from '@react-native-picker/picker' ; Erstellen Sie Status, der vom Picker verwendet wird:
const [ selectedLanguage , setSelectedLanguage ] = useState ( ) ; Fügen Sie Picker so hinzu:
< Picker
selectedValue = { selectedLanguage }
onValueChange = { ( itemValue , itemIndex ) =>
setSelectedLanguage ( itemValue )
} >
< Picker . Item label = "Java" value = "java" />
< Picker . Item label = "JavaScript" value = "js" />
</ Picker > Wenn Sie Picker programmgesteuert auf Android öffnen/schließen möchten (erhältlich aus Version 1.16.0+), geben Sie Ref an Picker weiter:
const pickerRef = useRef ( ) ;
function open ( ) {
pickerRef . current . focus ( ) ;
}
function close ( ) {
pickerRef . current . blur ( ) ;
}
return < Picker
ref = { pickerRef }
selectedValue = { selectedLanguage }
onValueChange = { ( itemValue , itemIndex ) =>
setSelectedLanguage ( itemValue )
} >
< Picker . Item label = "Java" value = "java" />
< Picker . Item label = "JavaScript" value = "js" />
</ Picker >View ...onValueChangeselectedValuestyletestIDenabledmodepromptitemStyleselectionColoronValueChangeRückruf für die Auswahl eines Elements. Dies wird mit den folgenden Parametern aufgerufen:
itemValue : Die value des ausgewählten ElementsitemPosition : Der Index des ausgewählten Elements in diesem Auswahler| Typ | Erforderlich |
|---|---|
| Funktion | NEIN |
selectedValueWertanpassungswert eines der Elemente. Kann eine Zeichenfolge oder eine Ganzzahl sein.
| Typ | Erforderlich |
|---|---|
| beliebig | NEIN |
style| Typ | Erforderlich |
|---|---|
| pickerSyletyp | NEIN |
testIDWird verwendet, um diese Ansicht in End-to-End-Tests zu finden.
| Typ | Erforderlich |
|---|---|
| Saite | NEIN |
enabledWenn die Auswahl deaktiviert ist, kann der Benutzer keine Auswahl treffen.
| Typ | Erforderlich | Plattform |
|---|---|---|
| bool | NEIN | Android, Web, Windows |
modeAn Android gibt an, wie die Auswahlelemente angezeigt werden, wenn der Benutzer auf den Picker aufnimmt:
| Typ | Erforderlich | Plattform |
|---|---|---|
| Enum ('Dialog', 'Dropdown') | NEIN | Android |
dropdownIconColor Auf Android gibt die Farbe des Dropdown -Dreiecks an. Der Eingabwert sollte einen Wert sein, der durch die React-native processColor -Funktion akzeptiert wird.
| Typ | Erforderlich | Plattform |
|---|---|---|
| ColorValue | NEIN | Android |
dropdownIconRippleColor Auf Android gibt die Ripple -Farbe des Dropdown -Dreiecks an. Der Eingabwert sollte einen Wert sein, der durch die React-native processColor -Funktion akzeptiert wird.
| Typ | Erforderlich | Plattform |
|---|---|---|
| ColorValue | NEIN | Android |
promptEingabeaufforderung für diesen Auswahl, der im Dialogmodus auf Android als Titel des Dialogfelds verwendet wird.
| Typ | Erforderlich | Plattform |
|---|---|---|
| Saite | NEIN | Android |
itemStyleStil, um sich für jedes der Artikeletiketten zu bewerben.
| Typ | Erforderlich | Plattform |
|---|---|---|
| Textstile | NEIN | iOS, Fenster |
numberOfLinesAuf Android & iOS, das zum Abschneiden des Textes mit einer Ellipse nach dem Berechnen des Textlayouts, einschließlich Zeilenverpackung, verwendet wird, so dass die Gesamtzahl der Zeilen diese Zahl nicht überschreitet. Standard ist '1'
| Typ | Erforderlich | Plattform |
|---|---|---|
| Nummer | NEIN | Android, iOS |
onBlur| Typ | Erforderlich | Plattform |
|---|---|---|
| Funktion | NEIN | Android |
onFocus| Typ | Erforderlich | Plattform |
|---|---|---|
| Funktion | NEIN | Android |
selectionColor| Typ | Erforderlich | Plattform |
|---|---|---|
| ColorValue | NEIN | iOS |
blur (nur Android, Lib Version 1.16.0+)Programmatisch schließt Picker
focus (nur Android, Lib Version 1.16.0+)Programmatisch öffnet Picker
Requisiten, die auf den einzelnen Picker.Item angewendet werden können.
labelWert auf dem Auswahlelement angezeigt
| Typ | Erforderlich |
|---|---|
| Saite | Ja |
valueTatsächlicher Wert im Auswahlartikel
| Typ | Erforderlich |
|---|---|
| Nummer, Zeichenfolge | Ja |
colorAngezeigte Farbe auf dem Auswahlartikel angezeigt
| Typ | Erforderlich |
|---|---|
| ColorValue | NEIN |
fontFamilyAngezeigte Schriftfamilie auf dem Picker -Element
| Typ | Erforderlich |
|---|---|
| Saite | NEIN |
styleStil für individuelle Artikelbezeichnungen.
| Typ | Erforderlich | Plattform |
|---|---|---|
| ViewStyleProp | NEIN | Android |
enabledWenn auf False festgelegt wird, ist das spezifische Element deaktiviert, dh der Benutzer kann keine Auswahl treffen
@Default: True
| Typ | Erforderlich | Plattform |
|---|---|---|
| boolean | NEIN | Android |
contentDescriptionLegt die Inhaltsbeschreibung in das Auswahlelement fest
| Typ | Erforderlich | Plattform |
|---|---|---|
| Saite | NEIN | Android |
View ...itemStyleonValueChangeselectedValueselectionColorthemeVariantitemStyle| Typ | Erforderlich |
|---|---|
| Textstile | NEIN |
onValueChange| Typ | Erforderlich |
|---|---|
| Funktion | NEIN |
selectedValue| Typ | Erforderlich |
|---|---|
| beliebig | NEIN |
selectionColor| Typ | Erforderlich | Plattform |
|---|---|---|
| ColorValue | NEIN | iOS |
themeVariant| Typ | Erforderlich |
|---|---|
| enum ('hell', 'dunkel') | NEIN |