Как изменить цвет выбранного предмета аккордеонного предмета в реакции родного? - PullRequest
0 голосов
/ 23 января 2019

Я сделал список аккордеонов, используя native-base. Я пытаюсь изменить цвет содержимого аккордеона, когда он выбран. Но я получаю, что будет выбор по умолчанию для первого элемента в аккордеоне.Также, если я закрою один аккордеон и открою другой, выбор будет на той же позиции, что и предыдущий. Следующий код - пожалуйста, помогите мне найти решение.

код

onPressList = (item, index) => {
    this.props.navigation.navigate("Header2", { id: item.id, name: item.value })
    this.setState({ pressStatus: true, selectedItem: index });
  }

....
....
<FlatList
          data={drop_down_data}
          extraData={this.state.selectedItem}
          renderItem={({ item, index }) => {
            const { selectedItem: sd } = this.state
            const localColor = { color: sd === index ? "#cc0000" : "black", fontWeight: sd === index ? "500" : "100" }
            return (
              < ListItem >
                <TouchableOpacity
                  style={{
                    padding: 5
                  }}
                  onPress={() =>
                    this.onPressList(item, index)
                  }>
                  <Text style={localColor}>{item.value}</Text>
                </TouchableOpacity>
              </ListItem>
            )
          }}
          keyExtractor={(item, index) => index.toString()}
        />
...