Я использую listView с TextInputs, на ios, когда TextInput фокусируется за клавиатурой. Как это исправить?на ios, когда TextInput сфокусирован на клавиатуре (реагирует-на-родной)
Пример кода: http://rnplay.org/apps/8baZSA
Я использую listView с TextInputs, на ios, когда TextInput фокусируется за клавиатурой. Как это исправить?на ios, когда TextInput сфокусирован на клавиатуре (реагирует-на-родной)
Пример кода: http://rnplay.org/apps/8baZSA
Вы должны использовать <ScrollView>
вместо <View>
для того, чтобы использовать этот метод.
Ключевой метод scrollResponderScrollNativeHandleToKeyboard(refToElement, scrollHeight, preventNegativeOffset)
(звучит круто, верно;))
У меня есть:
<TextInput ref='ccName' onFocus={(() => this.onFieldFocus('ccName'))} />
где функция выглядит следующим образом:
onFieldFocus(fieldName) {
this.setTimeout(() => {
let scrollResponder = this.refs.scrollView.getScrollResponder()
scrollResponder.scrollResponderScrollNativeHandleToKeyboard(
React.findNodeHandle(this.refs[fieldName]), 200, true
)
}, 125)
}
Кажется this thread является то, что вы находясь в поиске.
TL; DR: see this stackoverflow question
Спасибо, но, как вы можете увидеть в моем примере я использую ListView. – Maksim
Оберните ListView внутри ScrollView, затем? – zvona
Можете ли вы поделиться примером на rnplay.org, пожалуйста? – Maksim