下载此文档

React-native键盘遮挡输入框问题的解决.doc


文档分类:医学/心理学 | 页数:约8页 举报非法文档有奖
1/8
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/8 下载此文档
文档列表 文档介绍
React-native键盘遮挡输入框问题的解决
RN中要解决键盘遮挡输入框的问题其实有挺多方式,在这里只是记录其中的一些个人实际开发中使用到的。
方式一、使用scrollTo方法,这也是最简单最粗暴的,只是需要计算scrollview滚动的距离,并且处理一些体验的bug问题。大致思路是:组件render方法中使用scrollview,并且设置scrollview的keyboardShouldPersistTaps={true}(此步一定不能少,如果缺少该属性,接下来的一步将会不起作用),然后在scrollview中用一个view作为container包裹所有剩余的子视图,比如Text,TouchableHighlight之类的,并且用onStartShouldSetResponderCapture截取该view的事件,用以解决当点击页面上的按钮时,第一次点击只会收起键盘,第二次点击才会响应按钮方法的bug。然后在TextInput的onFocus方法中滚动scrollview,在onEndEditing中恢复scrollview的滚动。以下是在具体实现中的代码。
render方法的实现:
render:function() {
  return(
    <View style={}>
    <NavigationBar title={'绑定手机号'} onBackPress={}/>
    <ScrollView ref='scroll' keyboardShouldPersistTaps={true} >
      <View style={} onStartShouldSetResponderCapture={(e) => {
        const target = ;
        if (target !== () && target !== ()) {
          ();
          ();
        }}}>
        <TextInput
          style = {}
          ref = 'phoneInput'
          onFocus={(this)}
          onEndEditing={()=>{(0)}}
          onChange = {(this)}
          pla

React-native键盘遮挡输入框问题的解决 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数8
  • 收藏数0 收藏
  • 顶次数0
  • 上传人好用的文档
  • 文件大小33 KB
  • 时间2021-07-26