Как получить актуальный предмет FlatList - PullRequest
0 голосов
/ 19 февраля 2019

Я создаю приложение для AndroidTV и пытаюсь получить текущий элемент, сфокусированный на FlatList, с помощью TouchableNativeFeedback.

Я пытался использовать «onFocus» для изменения состояния, когда элемент FlatList имеет фокус, но когда приложение его визуализировалоказалось, сосредоточиться на каждом элементе, поскольку он был загружен в FlatList, что привело к ошибке для многих обновлений SetState.Я попытался использовать "() =>" в onfocus, чтобы остановить его при рендеринге, но это, казалось, не давало ему работать полностью

<View style={styles.containerItemNow}>
    <TouchableNativeFeedback background={TouchableNativeFeedback.Ripple('#f14621', true)} onFocus={this.UpdateStatus(item.status)} onPress={() => this.downloadfile(item.url)}>
        <View style={styles.containerItemNowSelected}>
            <Text style={{color: 'white'}}>{item.title}</Text>
        </View>
    </TouchableNativeFeedback>
</View>

Я надеялся, что когда пользователи будут перемещаться, используя d-pad, выделение элементас эффектом ряби, запускает onfocus и обновляет необходимое состояние, но этого не происходит, даже если эффект ряби показывает, что onfocus не запускается

...