React Native @gorhom/bottom-sheet -子视图的动态高度

91zkwejq  于 2023-08-07  发布在  React
关注(0)|答案(1)|浏览(268)

如何通过设置捕捉点或其他方式为子视图设置动态高度?下面是我的父组件和子组件代码。


的数据

需要通过删除多余空格来设置模态的动态高度
child.tsx

import {
 BottomSheetModal,
 BottomSheetModalProps,
 BottomSheetModalProvider,
} from '@gorhom/bottom-sheet';
import { BottomSheetModalMethods } from '@gorhom/bottom-sheet/lib/typescript/types';
import { Portal } from 'react-native-portalize';    

const BottomSheet = forwardRef<BottomSheetModalMethods, Props>(
({ children, snapPoints, handleSheetClose }, ref) => {

const memorizedSnapPoints = useMemo(() => snapPoints, [snapPoints]);

return (
  <Portal>
    <BottomSheetModalProvider>
      <BottomSheetModal
        ref={ref}
        index={1}
        snapPoints={memorizedSnapPoints}
        backdropComponent={(props) => (
          <CustomBackdrop onPress={handleSheetClose} {...props} />
        )}
        handleIndicatorStyle={handler}
        onDismiss={handleSheetClose}
        backgroundStyle={backgroundModal}
      >
        <View style={[flex1, contentContainer]}>{children}</View>
      </BottomSheetModal>
    </BottomSheetModalProvider>
  </Portal>
);
},
);

字符串

parent.tsx

<BottomSheet
    ref={bottomSheetModalRef}
    snapPoints={['25%', DEVICE_HEIGHT * 0.35]}
    handleSheetClose={handleSheetClose}
  >

tf7tbtn2

tf7tbtn21#

没有一种干净的方法可以做到这一点,而不会使您的组件变得混乱,但是有一个active pull request,所以我们可能很快就会看到这个特性。

相关问题