как отключить реагировать родной пикер после выбора опции - PullRequest
0 голосов
/ 20 марта 2019

Я хочу отключить (я не хочу ничего выбирать) средство выбора, как только я выберу опцию из выпадающего списка.Вот сборщик,

<View style={editProfileStyle.pickerView}>
            <Picker
              style={{
                ...Platform.select({
                  android: {
                    color: "#000"
                  }
                })
              }}
              enabled={true}
              selectedValue={this.state.Qualification}
              onValueChange={this.updateState}
              mode="dropdown"
              itemStyle={{ height: 80, color: "#000000" }}
            >
                {this.state.options.map((item, index) => {
                    return <Picker.Item value={item} key={index} label={item} />;
                })}
            </Picker>
          </View>

Очень поможет, если решение найдено!

1 Ответ

0 голосов
/ 20 марта 2019

Вы можете использовать активированный реквизит, enabled = {this.state.enabled}, когда пользователь выбирает дату, вызывает setState и переключает включенное состояние в false. Просто имейте в виду, что включен реквизит работает только для Android. Это пример:

constructor(props) {
    super(props);
    this.state = { 
        enabled: true // Enabled by default , you can change it
     };

// inside your updateState function call : this.setState({enabled:false})
// if you dont already defined updateState
// updateState = () =>{ this.setState({enabled:false})
<View style={editProfileStyle.pickerView}>
            <Picker
              style={{
                ...Platform.select({
                  android: {
                    color: "#000"
                  }
                })
              }}
              enabled={this.state.enabled}
              selectedValue={this.state.Qualification}
              onValueChange={this.updateState}
              mode="dropdown"
              itemStyle={{ height: 80, color: "#000000" }}
            >
                {this.state.options.map((item, index) => {
                    return <Picker.Item value={item} key={index} label={item} />;
                })}
            </Picker>
          </View>
...