React Native - Android LayoutAnimation клавиатура FlatView Bug
В настоящее время у меня есть раздражающая проблема с (я думаю) LayoutAnimation.
Моя проблема заключается в следующем: у меня есть приложение, в котором я могу искать по всему FlatList, с помощью кнопки поиска я открываю панель и получаю фокус на TextInput, который открывает клавиатуру. Проблема возникает, когда я хочу закрыть ее по какой-то причине, если я закрываю ее вручную с помощью кнопки "Назад" телефона. Она закрывается и все в порядке, нажав на список, чтобы закрыть его, но проблема возникает, когда я закрываю поиск (поэтому TextInput удаляется с экрана, а клавиатура автоматически закрывается даже без вызова .blur()
но я тоже пытался и получил ту же проблему.
Вот несколько экранов для объяснения:
Теперь вот немного кода:
_onPressSearch() {
LayoutAnimation.easeInEaseOut();
this.setState({
showSearch: !this.state.showSearch
}, function () {
( this.state.showSearch ?
this.refs.searchInput.focus() :
this.setState({
searchString: "",
filtered: null
}) )
});
}
var searchBar = (this.state.showSearch ?
<View>
<TextInput
style={styles.searchInput}
ref='searchInput'
onChangeText={this._onChangeText.bind(this)}
value={this.state.searchString}
underlineColorAndroid={Colors.search}
maxLength={25}
autoCapitalize='none'
autoCorrect={false}
placeholder={I18n.t('search')}
placeholderTextColor={Colors.search}
clearButtonMode='never' />
</View> : <View />);
<List style={{ flex: 1 }}>
<FlatList
data={(this.state.filtered === null ? this.state.listings : this.state.filtered)}
keyExtractor={this._keyExtractor}
extraData={this.state}
renderItem={this._renderItem} />
</List>
Я использую:
"react": "16.0.0-alpha.12",
"react-native": "0.52.0",
который я обновил с 0.49.4 до 0.52.0, надеясь, что это решит проблему, но, похоже, нет
Для информации: нет проблем в IOS, и я сделал активную анимацию на Android, чтобы получить анимацию. Кроме того, если я удалю анимацию LayoutAnimation.easeInEaseOut();
все работает, кроме того, что у меня нет анимации, конечно.
большое спасибо