javascript - React Native ViewPager 与 KeyboardAvoidingView 作为 parent 不保持键盘 - iOS

标签 javascript react-native react-native-ios

当我使用 ViewPager来自 react-native-community/viewpagerKeyboardAvoidingViewViewPager 的风格是flex:1 KeyboardAvoidingView 的行为是 padding键盘跟不上。

<KeyboardAvoidingView style={{flex: 1}} behavior="padding">
    <ViewPager
      {...viewPagerProps}
      ref={viewPagerRef}
      scrollEnabled={false}
      keyboardDismissMode="on-drag"
      style={[{flex: 1, borderWidth: 1, borderColor: 'red'}, style]}
      onPageScroll={Animated.forkEvent(onPageScroll, _onPageScroll)}
    />
    {_renderBottomControls()}
  </KeyboardAvoidingView>

_renderBottomControls()

<SafeAreaView style={{flexDirection: 'row', justifyContent: 'space-between', padding: 8}}>
    <Transitioning.View
      transition={transition}
      ref={transitionBackButtonRef}>
      {currentPage !== 0 && (
        <Button mode="text" compact onPress={_onPressPrevious}>
          Voltar
        </Button>
      )}
    </Transitioning.View>

    <Button mode="contained" disabled={!isValid} onPress={_onPressNext}>
      {isLastPage ? 'Concluir' : 'Continuar'}
    </Button>
  </SafeAreaView>

GIF showing de issue

最佳答案

对此的修复并不明显,我希望开发人员将其放入文档中

View 寻呼机需要绝对定位

<ViewPager style={{position: 'absolute'}}/>

此外,如果屏幕现在被键盘隐藏,请将 viewpager 包装在 KeyboardAvoidingView

关于javascript - React Native ViewPager 与 KeyboardAvoidingView 作为 parent 不保持键盘 - iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58440315/

相关文章:

xcode - 从 v0.61.5 手动升级到 v0.63.3 后如何修复 'ReactCommon/CallInvoker.h file not found'

javascript - 在 AJAX 回调函数中设置变量

javascript - 动画弹出一个div层

ios - React Native 创建自定义组件/库

react-native - 在 'preferredDatePickerStyle' 类型的对象上找不到属性 'UIDatePicker'

react-native - React Native - 图像加载非常缓慢,根本没有

javascript - 在 styled-components 中传递一个 window.onload 函数

javascript - 航点.js : check if element is in view on page load

javascript - React 状态从一个组件不一致地传递到下一个组件

Android 相当于 ImageRecorderIOS.openCameraDialog