首页 > 解决方案 > 在 Picker 中选择的值,适用于 ANDROID,但不适用于 iOS

问题描述

我正在使用库@react-native-picker/picker 使用 select 制作表单。

在 Android 上选择一个值时,该值被选中并在常量内正常设置。

但是,当使用 iOS 时,该值设置在常量内,但未被选中并返回默认索引。

按照我的简短代码更好地理解。

 import {Picker} from '@react-native-picker/picker';

 const [subcategoria, setSubcategoria] = useState([]);

 const [subcategorias, setSubcategorias] = useState([
        {key:'0', nome: 'Default'}, 
        {key:'1', nome: 'Guindaste veicular'}, 
        {key:'2', nome: 'Guindaste Esteira'}, 
        {key:'2', nome: 'Guindaste Munk'}, 
        {key:'4', nome: 'Guindaste Torre '}, 
    ]);

  let subcategoriaItem = subcategorias.map((v, k) => {
    return <Picker.Item key={k} value={v} label={v.nome}/>
  })


 // function to check if any values have been selected. 
function SelectDefaultSubcategory(v,i) {
    if (v.key !== 0) {
       setSubcategoria(v);
    }  

 }

    return (

            <Text style={styles.tituloInput}>SUBCATEGORIA</Text>
            <View style={styles.picker}>
                <Picker
                selectedValue={subcategoria}
                onValueChange={(itemValue, itemIndex) => 
                SelectDefaultSubcategory(itemValue,itemIndex)}
                style= {{color: '#fff'}}
                dropdownIconColor={'white'}
                >
                    {subcategoriaItem}
                </Picker>
            </View>

            )

尝试的解决方案

有谁知道什么可能导致这个问题?

标签: androidiosreactjsreact-hookspicker

解决方案


推荐阅读