Индекс мудрый SetState Onpress для радиоформ в реагировать нативно - PullRequest
0 голосов
/ 30 августа 2018

Здравствуйте, я нахожусь в новом в реагировать на родной Мне нужно решение, которое у меня есть радиоформ внутри flatlist. Таким образом, будет такое же количество радиоформ, как и для рендеринга строк с плоским списком. Я хочу установить состояние для реагирования на встроенную функцию нажатия. Поскольку я могу получить значение состояния радиоформы, но я хочу получить индекс мудрый. Итак, как установить Индекс состояния для Radioform. Вот мой код Radioform внутри плоского списка.

 <RadioForm
            animation={true}
            buttonColor={"#C2E3A9"}
            index={index}
            formHorizontal={true}
            labelHorizontal={true}
            buttonStyle={{ marginRight: 20 }}
            radioStyle={{ paddingRight: 20 }}
            //  labelHorizontal={false}
            style={styles.radiostyle}
            radio_props={radio_props}
            initial={this.state.typeofattendance[1]}
            isSelected = {true}

            **onPress={value => {this.setState({ typeofattendance: value});

              }**
            }
            ItemSeparatorComponent={this.renderSeparator}
          />

1 Ответ

0 голосов
/ 28 сентября 2018

Может быть, вы можете добавить индекс в renderItem FlatList

renderItem = ({item, index}) => {       
    return(   
        <View>
           <RadioForm
            animation={true}
            buttonColor={"#C2E3A9"}
            index={index}
            formHorizontal={true}
            labelHorizontal={true}
            buttonStyle={{ marginRight: 20 }}
            radioStyle={{ paddingRight: 20 }}
            //  labelHorizontal={false}
            style={styles.radiostyle}
            radio_props={radio_props}
            initial={this.state.typeofattendance[1]}
            isSelected = {true}

            **onPress={value => {this.setState({ typeofattendance: value, index: index
});

              }**
            }
            ItemSeparatorComponent={this.renderSeparator}
          />
        </View>
      );
  }
...