on Text当TextInput将它集中在键盘后面时(react-native)

时间:2016-03-16 10:10:12

标签: ios react-native mobile-development

我正在使用带有TextInputs的listView,当TextInput将它集中在键盘后面时。如何解决?

示例代码:http://rnplay.org/apps/8baZSA

2 个答案:

答案 0 :(得分:0)

您需要使用<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) 
}

答案 1 :(得分:0)

似乎this thread是您正在寻找的。

TL; DR:see this stackoverflow question